Geometrijski niz C++

18/08/2012 15:43

 

                                    Geometrijski  niz

   Niz kod kojeg je količnik-kvocijent (q) susjednih članova stalan (const) i različit od  „0“ (nule) je geometrijski niz.

                        q = a2/a1 = a2/a1 = ... = const, ili

                          za n>1  količnik je  q = an/an -1.

 Opći-opšti član geometrijskog niza je  an = q . an -1   ili   an = a1  . qn -1.

        Treba znati da geometrijski niz možemo zadati ako znamo  količnik-kvocijent (q) i njegov prvi član  (a1), tako je na primjer geometrijski niz sa prvim članom  a1 =1  i količnikom q =3 dat sa 1, 3, 9, 27, 81, 243, ... , ili ako je  a1 = 5  i  q = 2  dat sa   5, 10, 20, 40, 80, 160, ...

Suma-zbir članova geometrijskog niza za q 1  je  Sn = a1 . (qn -1)/( q -1).

   Geometrijski niz se može prikazati u programskim jezicima. Evo par kodova geometrijskog niza u jeziku C++.

      PRIMJER br.1.

Napisati program za ispis članova geometrijskog niza ako je poznat kvocijent-količnik (q) i prvi (a1) član niza.

     RJEŠENJE:

//Geometrijski niz

#include <cstdlib>

#include <iostream>

#include <cmath>

using namespace std;

int main()

{

 float i,n,p,q;

 float *A;

    cout << "Unesite broj elemenata geometrijskog niza? ";

    cin >> n;   

    cout << "   Upisi prvi clan niza: ";

    cin >> p;

      cout << "      Sada unesi kolicnik q = ";

    cin >> q;

    cout << "Clanovi geometrijskog niza su: \n";  

for(i=1;i<=n;i++)

   cout << "    A[" << i << "] == " <<p*(pow(q, i-1))<< endl;  

     }   

          return 0;

            }

            EKRAN:

Unesite broj elemenata geometrijskog niza? 6

        Upisi prvi clan niza: 4

               Sada unesi kolicnik q = 3

Clanovi geometrijskog niza su:

            A[1] == 4

            A[2] == 12

            A[3] == 36

            A[4] == 108

            A[5] == 324

            A[6] == 972

 

      PRIMJER br.2.

Napisati program koji ispisuje  članove i sumu-zbir članova geometrijskog niza ako je poznat kvocijent-količnik (q) i prvi (a1) član niza.

     RJEŠENJE:

//Ispisuje clanove geometrijskog niza i sumu clanova

#include <cstdlib>

#include <iostream>

#include <cmath>

using namespace std;

int main()

{

 float i,n,p,q,S;

 float *A;

    cout << "Unesite broj elemenata geometrijskog niza? ";

    cin >> n;   

    cout << "   Upisi prvi clan niza: ";

    cin >> p;

      cout << "      Sada unesi kvocijent q = ";

    cin >> q;

    S=p*((pow(q, n))-1)/(q-1);

    cout << "Clanovi geometrijskog niza su: \n";  

for(i=1;i<=n;i++)

   cout << "    A[" << i << "] == " <<p*(pow(q, i-1))<< endl;  

     } 

        cout << " Suma-zbir clanova je S = "<<S<<endl;

          return 0;

            }

            EKRAN:

Unesite broj elemenata geometrijskog niza? 8

        Upisi prvi clan niza: 3

               Sada unesi kolicnik q = 2

Clanovi geometrijskog niza su:

            A[1] == 3

            A[2] == 6

            A[3] == 12

            A[4] == 24

            A[5] == 48

            A[6] == 96

            A[7] == 192

            A[8] == 384

 Suma-zbir clanova je S = 765

 

      PRIMJER br.3.

Napisati program koji ispisuje  članove i sumu-zbir članova geometrijskog niza ako je poznat kvocijent-količnik (q) i prvi (a1) član niza, te clanove niza koji su na parnim mjestima (svaki drugi clan niza).

     RJEŠENJE:

//Ispisuje clanove geometrijskog niza i njihovu sumu-zbir, te svaki drugi clan niza

#include <cstdlib>

#include <iostream>

#include <cmath>

using namespace std;

int main()

{

 float i,n,p,q,S;

 float *A;

    cout << "Unesite broj elemenata geometrijskog niza? ";

    cin >> n;   

    cout << "   Upisi prvi clan niza: ";

    cin >> p;

      cout << "      Sada unesi kvocijent q = ";

    cin >> q;

    S=p*((pow(q, n))-1)/(q-1);

    cout << "Clanovi geometrijskog niza su: \n";  

for(i=1;i<=n;i++)

{  

   cout << "    A[" << i << "] == " <<p*(pow(q, i-1))<< endl;  

     } 

        cout << " Suma-zbir clanova je S = "<<S<<endl;

        cout << "Clanovi svakog drugog clana geometrijskog niza su: \n";     

        for(i=1;i<=n/2;i++)

{  

   cout << "    A[" << i+i << "] == " <<(p*(pow(q, i-1+i-1))*q)<< endl;  

     }  

          return 0;

            }

            EKRAN:

Unesite broj elemenata geometrijskog niza? 9

        Upisi prvi clan niza: 2

               Sada unesi kolicnik q = 2

Clanovi geometrijskog niza su:

            A[1] == 2

            A[2] == 4

            A[3] == 8

            A[4] == 16

            A[5] == 32

            A[6] == 64

            A[7] == 128

            A[8] == 256

            A[9] == 512

 Suma-zbir clanova je S = 1022

Clanovi svakog drugog clana geometrijskog niza su:

            A[2] == 4

            A[4] == 16

            A[6] == 64

            A[8] == 256

      EKRAN:

Unesite broj elemenata geometrijskog niza? 9

        Upisi prvi clan niza: 1

               Sada unesi kolicnik q = 3

Clanovi geometrijskog niza su:

            A[1] == 1

            A[2] == 3

            A[3] == 9

            A[4] == 27

            A[5] == 81

            A[6] == 243

            A[7] == 729

            A[8] == 2187

            A[9] == 6561

 Suma-zbir clanova je S = 9841

Clanovi svakog drugog clana geometrijskog niza su:

            A[2] == 3

            A[4] == 27

            A[6] == 243

            A[8] == 2187

 

      PRIMJER br.4.

Napisati program koji ispisuje  članove  geometrijskog  niza ako je poznat kvocijent-količnik (q) i prvi (a1) član niza, te svaki treci clan niza.

     RJEŠENJE:

//Ispisuje clanove geometrijskog niza i svaki treci clan niza

#include <cstdlib>

#include <iostream>

#include <cmath>

using namespace std;

int main()

{

 float i,n,p,q;

 float *A;

    cout << "Unesite broj elemenata geometrijskog niza? ";

    cin >> n;   

    cout << "   Upisi prvi clan niza: ";

    cin >> p;

      cout << "      Sada unesi kvocijent q = ";

    cin >> q;

    cout << "Clanovi geometrijskog niza su: \n";  

for(i=1;i<=n;i++)

{  

   cout << "    A[" << i << "] == " <<p*(pow(q, i-1))<< endl;  

     } 

        cout << "Clanovi svakog treceg clana geometrijskog niza su: \n";     

        for(i=1;i<=n/3;i++)

{  

   cout << "    A[" << i+i+i << "] == " <<(p*(pow(q, i-1+i-1+i-1))*q*q)<< endl;  

     }  

          return 0;

            }

            EKRAN:

Unesite broj elemenata geometrijskog niza? 13

        Upisi prvi clan niza: 2

               Sada unesi kolicnik q = 2

Clanovi geometrijskog niza su:

            A[1] == 2

            A[2] == 4

            A[3] == 8

            A[4] == 16

            A[5] == 32

            A[6] == 64

            A[7] == 128

            A[8] == 256

            A[9] == 512

            A[10] == 1024

            A[11] == 2048

            A[12] == 4096

            A[13] == 8192

Clanovi svakog treceg clana geometrijskog niza su:

            A[3] == 8

            A[6] == 64

            A[9] == 512

            A[12] == 4096

     EKRAN:

Unesite broj elemenata geometrijskog niza? 11

        Upisi prvi clan niza: 1

               Sada unesi kolicnik q = 3

Clanovi geometrijskog niza su:

            A[1] == 1

            A[2] == 3

            A[3] == 9

            A[4] == 27

            A[5] == 81

            A[6] == 243

            A[7] == 729

            A[8] == 2187

            A[9] == 6561

            A[10] == 19683

            A[11] == 59049           

Clanovi svakog treceg clana geometrijskog niza su:

            A[3] == 9

            A[6] == 243

            A[9] == 6561