•RazvanInfo10
Strain
Karma: 2
Deconectat
Mesaje: 32
|
|
« : Octombrie 11, 2013, 21:44:52 » |
|
Salut, am revenit cu o problema ce nu o gasesc pe internet si nici in cartea de informatica, eu vreau urmatoarele: Sa se dea un sir de numere, si sa se ordoneze crescator numerele pare.Eu am gasit numerele pare, dar nu stiu cum sa le fac sa le ordonez crescator, ma poate ajuta cineva.Multumesc.
|
|
|
Memorat
|
|
|
|
|
•RazvanInfo10
Strain
Karma: 2
Deconectat
Mesaje: 32
|
|
« Răspunde #2 : Octombrie 12, 2013, 12:38:35 » |
|
da inteleg, am folosit de mai multe ori metoda bulelor, dar nu inteleg cum sa fac.Se da un sir de numere ex: 2 5 10 7 8 6, si sa se ordoneze crescator numerele pare.
|
|
|
Memorat
|
|
|
|
•rares96cheseli
Client obisnuit
Karma: 45
Deconectat
Mesaje: 60
|
|
« Răspunde #3 : Octombrie 12, 2013, 12:46:24 » |
|
ai putea sa iti salvezi numerele pare in alt vector iar apoi sa ordonezi doar acel vector.
|
|
|
Memorat
|
|
|
|
•RazvanInfo10
Strain
Karma: 2
Deconectat
Mesaje: 32
|
|
« Răspunde #4 : Octombrie 12, 2013, 12:57:37 » |
|
ma poti ajuta(la cod ma refer) la partea cu: sa memorez intr-un alt vector numerele pare.Multumesc
|
|
|
Memorat
|
|
|
|
•rares96cheseli
Client obisnuit
Karma: 45
Deconectat
Mesaje: 60
|
|
« Răspunde #5 : Octombrie 12, 2013, 15:12:12 » |
|
Desigur. Uite codul aici int V[ nr_max_pozitii ]; //vectorul initial int A[ nr_max_pozitii ]; //vectorul in care retii numerele pare int dim=0; // dimensiunea vectorului A
for (int i=1; i<=n; ++i) if ( V[ i ] % 2 == 0) // daca numarul este par A[ ++dim ] == V[ i ];
sort(A+1, A+dim+1);
|
|
|
Memorat
|
|
|
|
•RazvanInfo10
Strain
Karma: 2
Deconectat
Mesaje: 32
|
|
« Răspunde #6 : Octombrie 12, 2013, 15:15:42 » |
|
Am inteles, ai facut cu stive.Multumesc mult de tot pentru ajutor, sunt incepator si imi este putin greu la inceput...
|
|
|
Memorat
|
|
|
|
•RazvanInfo10
Strain
Karma: 2
Deconectat
Mesaje: 32
|
|
« Răspunde #7 : Octombrie 12, 2013, 19:50:34 » |
|
Am scris urmatorul cod:
#include<iostream> #define Max 100 int S[Max]; int S1[Max]; using namespace std; int main() { int v[100],v1[100],i,n,dim,dim1; cout<<"n="; cin>>n; for(i=1;i<=n;i++) { cin>>v; if(v%2==0) { S[++dim]=v; } else S1[++dim1]=v; } cout<<endl; while(dim!=0) { cout<<S[dim--]<<endl; } cout<<endl; while(dim1!=0) { cout<<S1[dim1--]<<endl; } system("pause"); return 0; }
pentru: n=4, respectiv: 1,2,3,4, imi afiseaza, pare:4 2 si impare: 3 1 0.De ce imi apare 0 ?Multumesc
|
|
« Ultima modificare: Octombrie 12, 2013, 22:26:52 de către Razvan »
|
Memorat
|
|
|
|
•rares96cheseli
Client obisnuit
Karma: 45
Deconectat
Mesaje: 60
|
|
« Răspunde #8 : Octombrie 13, 2013, 10:46:47 » |
|
Foloseste tagul pentru cod cand mai postezi cod ca nu prea se intelege ce scrii tu acolo. Si incearca sa nu mai declari variabile pe stiva (in interiorul functiilor). Sau daca declari pe stiva, sa le initializezi. Poate din cauza asta iti afiseaza aiurea
|
|
« Ultima modificare: Octombrie 13, 2013, 11:05:08 de către Cheseli Rares »
|
Memorat
|
|
|
|
•RazvanInfo10
Strain
Karma: 2
Deconectat
Mesaje: 32
|
|
« Răspunde #9 : Octombrie 13, 2013, 12:28:14 » |
|
am inteles, multumesc mult.
|
|
|
Memorat
|
|
|
|
•blasterz
|
|
« Răspunde #10 : Octombrie 13, 2013, 17:19:47 » |
|
dim si dim1 sunt declarate local si fiindca nu sunt initializate manual ele primesc valori random...
|
|
|
Memorat
|
|
|
|
|