hvaLa dRuze, znao sam za prvi broj da je djeljenje sa 10, al taj module me malo zezno :O ... HvaLa na pomoci ;)
Zadatak:
Code:
Mali Z stoji iznad papira i bezuspesno pokusava da nadje koren broja zapisanog na papiru.
Pomozite malom Z-u da nadje broj B koji je koren velikog broja A, A ima najvishe 1000 cifara. A ce uvek imati celobrojni koren
Ulaz:
Sa standardnog ulaza ucitava se u jednoj liniji broj N 0 < N <= 1000, koji predstavalja broj cifara datog broja A. U narednih N linija ucitavaju se cifre broja, i to prvo cifre najvece vrednosti.
Izlaz:
Na standardni izlaz upisati broj M, duzinu broja B, koji predstavlja pozitivni datog broja A, i u narednih M linija ispisati cifre broja B. I to od cifre najvece vrednosti do cifre najmanje.
Primer:
Ulaz:
3
6
2
5
Izlaz:
2
2
5
Moje rjesenje , meni radi perfektno ali to naravno z-traning ne prihvata , ne znam zasto nit me zanima 'nek meni radi x]
Code:
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int N,A,A1,A2,A3,A4,B,M,B1,B2;
cin >> N;
if ( N == 3 ){
cin >> A1;
cin >> A2;
cin >> A3;
A = ( A1 * 100 ) + ( A2 * 10 ) + A3;
B = sqrt(A);
cin >> M;
cout <<endl;
if ( M == 2 && B >= 10 && M < 100 ){
cout << "2" << endl;
B1 = B / 10;
B2 = B % 10;
cout << B1 << endl;
cout << B2 << endl;
}
}
else if ( N == 2 ){
cin >> A1;
cin >> A2;
A = ( A1 * 10 ) + A2;
B = sqrt(A);
cin >> M;
cout << endl;
if ( M == 1 && B > 0 && B < 10 ){
cout << "1" << endl;
cout << B << endl;
}
}
else if ( N == 4 ){
cin >> A1;
cin >> A2;
cin >> A3;
cin >> A4;
A = (A1 * 1000) + A2 + A3 + A4;
if ( A == 1000 ){
cout << "3" << endl;
cout << "1\n" << "0\n" << "0\n" << endl;
}
else{
return 0;
}
}
else if ( A == 100 ){
cout << "2" << endl;
cout << "1\n" << "0\n" << endl;
}
else{
return 0;
}
system ("PAUSE");
return 0;
}
Imam osjecaj da se sramotim ovdje, jer vi ovakav zadatak vjerovatno "strpate" u 30 redova i manje :)
[Ovu poruku je menjao Topnik_15 dana 06.03.2010. u 01:35 GMT+1]