Tablouri unidimensionale. Recapitulare

6

description

Tablouri unidimensionale. Recapitulare

Transcript of Tablouri unidimensionale. Recapitulare

Page 1: Tablouri unidimensionale. Recapitulare
Page 2: Tablouri unidimensionale. Recapitulare

- Declarare biblioteci de functii:ex: #include <iostream.h>

#include <conio.h>

- Declararea variabilelor programului: tabloul unidimensional (vector) si dimensiunea ocupata in memorie, ex: int V[100] O variabila intreaga ce reprezinta numarul de elemente al tabloului, ex: int n Una sau mai multe variabile contor utilizate la parcurgerea tablourilor,ex: int i, j Alte variabile necesare programului.

Page 3: Tablouri unidimensionale. Recapitulare

- Descrierea programuluivoid main() { // începutul programului

clrscr();

- Secvenţa de citire de la tastatură a variabilelor progrmauluicout<<“n=”;cin>>n;for( i=0 ; i<n ; i++ ){

cout<< “V[” << i <<“]=” ;cin>> V[i];

}- Secventa cu algoritmul specific problemei date:

Sume si produse cu elementele tabloului si alte operatii cu elemetele tabloului

Cautari de elemete Sortari (ordonări) - interscimbare, selectie, insertie

Page 4: Tablouri unidimensionale. Recapitulare

- Secvenţa de afişare a tabloului modificat în urma prelucrărilorfor( i=0 ; i<n ; i++ )

cout<< V[i] << ‘ ‘ ;

- Încheierea programuluigetch();}

SECVENŢE SPECIFICE:Sume: - V[0]+V[1]+V[2]+…+V[n-1]Ex: S=0;for(i=0 ; i<n ; i++ )

S = S + V[i];- V[0]/2 + V[1]/2 +V[ 2]/2 + …+ V[n-1]/2- 1/V[0] + 1/V[1] + 1/V[2] +…+ 1/V[n-1]

Produse:- V[0] *V[1] * V[2] * … * V[n-1]P=1;for(i=0 ; i<n ; i++ )

P = P * V[i];

Page 5: Tablouri unidimensionale. Recapitulare

Căutarea unui element x in tabloul oarecare:i=0;do {

if( x == V[i] )cout<< “Elementul ” << x << “ a fost gasit pe pozitia ” << i ;

i++;} while ( i<n ) ;

Sortarea prin interschimbare:do {

inter = 0 ;for( i=0 ; i<n-1 ; i++ )

if( v[i] > V[j] ){aux = V[i] ;V[i] = V[j] ;V[j] = aux ;inter = 1;

}} while ( inter == 1 );

Page 6: Tablouri unidimensionale. Recapitulare

PROBLEME PROPUSE1) V[0]/2 + V[1]/2 +V[ 2]/2 + …+ V[n-1]/2, unde V este un tablou de

numere reale introduse de la tastatura.2) 1/V[0] + 1/V[1] + 1/V[2] +…+ 1/V[n-1], unde V este un tablou de numere

reale introduse de la tastatura.3) Se citeste de la tastatura un tablou de maxim n, (n<=100)

elemete de tip intreg ordonate crescator. Sa se caute un elemet x citit de la tastatura si daca acesta este gasit sa se afiseze pozitia pe care a fost gasit.

4) Se citeste de la tastatura un tablou de n, (n<=100) numere intregi citite de la tastatura. Sa se ordoneze crescator elementele tabloului, utilizand algoritmul de selectie, si sa se afiseze.

5) Se citeste de la tastatura un tablou de n, (n<=100) numere intregi citite de la tastatura. Sa se ordoneze descrescator elementele tabloului, utilizand algoritmul de selectie, si sa se afiseze.

6) Se citeste de la tastatura un tablou de n, (n<=100) numere intregi citite de la tastatura. Sa se ordoneze crescator elementele tabloului, utilizand algoritmul de insertie, si sa se afiseze.

7) Se citeste de la tastatura un tablou de n, (n<=100) numere intregi citite de la tastatura. Sa se ordoneze descrescator elementele tabloului, utilizand algoritmul de insertie, si sa se afiseze.