Cerinţa
Se dau două şiruri cu câte n
elemente, numere naturale nenule. Să se verifice dacă este posibilă rearanjarea elementelor celor două şiruri astfel încât acestea să fie direct proporţionale.
Date de intrare
Programul citește de la tastatură numărul n
, iar apoi cele n
elemente ale şirului, separate prin spaţii.
Date de ieşire
Programul afișează pe ecran mesajul DA
, dacă este posibilă rearanjarea elementelor celor două şiruri astfel încât acestea să fie direct proporţionale, respectiv NU
în caz contrar.
Restricţii şi precizări
1 ≤ n ≤ 100
- elementele şirurilor vor avea cel mult
4
cifre - se recomandă evitarea lucrului cu numere reale
Exemplu
Date de intrare
6 10 10 15 30 25 15 6 9 9 6 15 18
Date de ieșire
DA
Explicaţie
Numerele (10 10 15 30 25 15)
şi (6 6 9 18 15 9)
sunt proporţionale. Raportul este 5/3
.
Cum e corect?
cout < "As la info";
cout << "As la info";
cout >> "As la info";
Felicitări! Poți mai mult?
Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.
Greșit, dar nu-i bai!
Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.
Rezolvare
Iată rezolvarea de 100 de puncte pentru problema Proportionale:
#include <iostream>
#include <cassert>
using namespace std;
int n,a[101],b[101];
int main(){
cin >> n;
for(int i=1 ; i<=n ; ++i){
assert(cin >> a[i]);
assert(a[i]<10000);
}
for(int i=1 ; i<=n ; ++i){
assert(cin >> b[i]);
assert(b[i]<10000);
}
for(int i=1;i<n;++i)
for(int j=i+1;j<=n;++j)
if(a[i]>a[j]){
int aux = a[i];
a[i] = a[j];
a[j] = aux;
}
for(int i=2;i<=n;++i){
int x = b[i];
int j=i;
while(j>1 && b[j-1]>x){
b[j] = b[j-1];
j--;
}
b[j] = x;
}
int pp = 1;
for(int i=2 ; i<=n ; ++i){
if(a[1]*b[i]!=b[1]*a[i])
pp = 0;
}
if(pp)
cout << "DA";
else
cout << "NU";
return 0;
}
Atenție
Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa .
Rezolvarea problemei #296 Proportionale
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #296 Proportionale de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.
Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!