Sunteți pe pagina 1din 20

a.

Proiect realizat de catre:


Morarescu Emanuele
Iordache Andreea
Introducerea si stergerea.
Teorie si exercitii
Ce este inserarea si stergerea?
• Inserarea este metoda prin care se adauga un numar ales pe o pozitie alea
• Stergerea este metoda prin care se elimina un numar pe o pozitie aleasa.

Se pot face stergeri/inserari



multiple?
Stergerile/Inserarile multiple se pot face prin parcurgerea
vectorului cu “while”.
• La stergere se face acest lucru deoarece stergerea unui element are
ca urmare deplasare pe locul sau a elementului urmator care
trebuie si el verificat.
• La inserare se face acest lucru pentru a putea diferentia cazul cand
inseram de cazul cand nu se face inserarea.
Stergere
Structura algoritmului Inserare
#include <iostream> #include <iostream>
using namespace std; Se declara valorile pe care o using namespace std;
int main() sa le folosim si le citim int main()
{ {
int n,i,v[100]; int n,i,v[100];
cin>>n; cin>>n;
for(i=0;i<n;i++){ for(i=0;i<n;i++){
cin>>v[i]; cin>>v[i];
} Se realizeaza partea }
int pozitie; de prelucrare a int valoare, pozitie;
cin>>pozitie; cin>>valoare>>pozitie;
vectorului
for(i=pozitie;i<n-1;i++){ for(i=n;i>pozitie;i--){
v[i]=v[i+1]; v[i]=v[i-1];
} }
n--; n++;
for(i=0; i<n; i++){ v[pozitie]=valoare;
cout<<v[i]<<" "; for(i=0;i<n;i++){
}
Partea de afisare a vectorului cout<<v[i];
return 0; }
} return 0;
}
Exemplu vizual pentru inserare
Dati un click pe spatiul liber de langa
orice cutie

7 5 2 1 8

i 0 1 2 3 4

“i”-ul reprezinta pozitia pe care se afla numarul, numerotarea


pozitiilor incepand de la cifra 0, cum este declarata in urmatoarea
secventa:
for(i=0;i=n;i++){
cin>>v[i];

Folositi aceasta iconita pentru a va putea intoarce la acest slide


Exemplu vizual pentru inserare

7 21 5 2 1 8

i 0 1 2 3 4 5

“i”-ul acum a mai crescut cu o unitate datorita faptului ca s-a mai adaugat un numar si i s-a alocat o pozitie
OBSERVATIE!
“i”-ul nu poate avea o valoare mai mare decat “n” (memoria folosita), care si acesta este la randul lui mai mic
decat memoria folosita (in cazul nostru, v[100]).
int n,i,v[100];
cin>>n;
for(i=0;i<n;i++){
cin>>v[i];
Exemplu vizual pentru inserare

7 5 9 2 1 8

i 0 1 2 3 4 5

“i”-ul acum a mai crescut cu o unitate datorita faptului ca s-a mai adaugat un numar si i s-a alocat o pozitie
OBSERVATIE!
“i”-ul nu poate avea o valoare mai mare decat “n” (memoria folosita), care si acesta este la randul lui mai mic
decat memoria folosita (in cazul nostru, v[100]).
int n,i,v[100];
cin>>n;
for(i=0;i<n;i++){
cin>>v[i];
Exemplu vizual pentru inserare

7 5 2 16 1 8

i 0 1 2 3 4 5

“i”-ul acum a mai crescut cu o unitate datorita faptului ca s-a mai adaugat un numar si i s-a alocat o pozitie
OBSERVATIE!
“i”-ul nu poate avea o valoare mai mare decat “n” (memoria folosita), care si acesta este la randul lui mai mic
decat memoria folosita (in cazul nostru, v[100]).
int n,i,v[100];
cin>>n;
for(i=0;i<n;i++){
cin>>v[i];
Exemplu vizual pentru inserare

7 5 2 1 16 8

i 0 1 2 3 4 5

“i”-ul acum a mai crescut cu o unitate datorita faptului ca s-a mai adaugat un numar si i s-a alocat o pozitie
OBSERVATIE!
“i”-ul nu poate avea o valoare mai mare decat “n” (memoria folosita), care si acesta este la randul lui mai mic
decat memoria folosita (in cazul nostru, v[100]).
int n,i,v[100];
cin>>n;
for(i=0;i<n;i++){
cin>>v[i];
Exemplu vizual pentru inserare
Hmm… Interesanta alegere

56 7 5 2 1 8

i 0 1 2 3 4 5

“i”-ul acum a mai crescut cu o unitate datorita faptului ca s-a mai adaugat un numar si i s-a alocat o pozitie
OBSERVATIE!
“i”-ul nu poate avea o valoare mai mare decat “n” (memoria folosita), care si acesta este la randul lui mai mic
decat memoria folosita (in cazul nostru, v[100]).
int n,i,v[100];
cin>>n;
for(i=0;i<n;i++){
cin>>v[i];
Exemplu vizual pentru inserare
Hmm… Interesanta alegere

7 5 2 1 8 37

i 0 1 2 3 4 5

“i”-ul acum a mai crescut cu o unitate datorita faptului ca s-a mai adaugat un numar si i s-a alocat o pozitie
OBSERVATIE!
“i”-ul nu poate avea o valoare mai mare decat “n” (memoria folosita), care si acesta este la randul lui mai mic
decat memoria folosita (in cazul nostru, v[100]).
int n,i,v[100];
cin>>n;
for(i=0;i<n;i++){
cin>>v[i];
Felicitari! Aceasta a fost teoria si
exemplul pentru inserare! Insa mai
avem si stergerea, asa ca zic sa
continuam cu lectia!
Exemplu vizual pentru stergere
Dati click pe una dintre
cutii

21 29 13 33 5

i 0 1 2 3 4

Daca la inserare valoarea “i”-ului a crescut cu o unitate, la stergere oare ce se va


intampla? Hai sa aflam apasand pe una dintre cutii!

Folositi aceasta iconita pentru a va putea intoarce la acest slide


Exemplu vizual pentru stergere

29 13 33 5

i 0 1 2 3

“i”-ul acum a scazut cu o unitate datorita faptului ca s-a sters un numar, alaturi cu pozitia acestuia
Exemplu vizual pentru stergere

21 13 33 5

i 0 1 2 3

“i”-ul acum a scazut cu o unitate datorita faptului ca s-a sters un numar, alaturi cu pozitia acestuia
Exemplu vizual pentru stergere

21 29 33 5

i 0 1 2 3

“i”-ul acum a scazut cu o unitate datorita faptului ca s-a sters un numar, alaturi cu pozitia acestuia
Exemplu vizual pentru stergere

21 29 13 5

i 0 1 2 3

“i”-ul acum a scazut cu o unitate datorita faptului ca s-a sters un numar, alaturi cu pozitia acestuia
Exemplu vizual pentru stergere

21 29 13 33

i 0 1 2 3

“i”-ul acum a scazut cu o unitate datorita faptului ca s-a sters un numar, alaturi cu pozitia acestuia
Multumim pentru atentia
acordata de-a lungul
prezentarii! Sper ca ati
invatat ceea ce v-ati
propus in aceasta lectie!

S-ar putea să vă placă și