PROSZE POMOCY C++

Zadanie 1.

Dana jest liczba naturalna o trzech cyfrach ABX, przy czym cyfra X nie jest znana. Napisz program obliczający
cyfrę X przy warunku, że suma cyfr A + B + X jest podzielna przez 3. Program ma wypisywać wszystkie możliwe rozwiązania.


Zadanie 2.

Napisz program sprawdzający czy suma cyfr dowolnej liczby naturalnej jest kwadratem liczby całkowitej.


Odpowiedź :

Odpowiedź:

Zadanie 1

#include <iostream>

using namespace std;

int main(int argc, char** argv) {

 

int liczba, suma, a, b;

 

cout<<"Wprowadz pierwsze 2 cyfry liczby ABX: ";

cin>>liczba;

 

a = liczba/10;

b = liczba%10;

 

 

for(int i = 0; i<10; i++) {

 suma = liczba/10 + liczba%10 + i;

 if(suma%3==0) {

  cout<<a<<" + "<<b<<" + "<<i<<" = "<<suma<<endl;

 }

}

 

return 0;

}

Zadanie 2

#include <iostream>

#include <math.h>

using namespace std;

int main(int argc, char** argv) {

 

int liczba, suma;

 

cout<<"Wprowadz liczbe naturalna: ";

cin>>liczba;

 

suma = 0;

 

while(liczba!=0) {

 suma += liczba%10;

 liczba = liczba/10;

}

 

if(sqrt(suma) - int(suma)== 0) {

 cout<<"liczba jest kwadratem";

} else {

 cout<<"liczba nie jest kwadratem";

}

 

return 0;

}

Wyjaśnienie:

Odpowiedź:

//1

#include <iostream>

using namespace std;

int main() {

 int a, b;

 cout << "Podaj cyfrę a:";

 cin >> a;

 cout << "Podaj cyfrę b:";

 cin >> b;

 for (int x = 0; x < 10; x++) {

   if ((a + b + x) % 3 == 0) {

     cout << a << b << x << " mod 3 = " << (a + b + x) % 3 << endl;

   }

 }

 return 0;

}

//2

#include <iostream>

using namespace std;

int main() {

 int i;

 cout << "Podaj liczbe naturalną: ";

 cin >> i;

 int x, s = 0;

 int inum = i;

 x = inum;

 while (x != 0) {

   s = s + x % 10;

   x = x / 10;

 }

 if (s == inum * inum) {

   cout << "Prawda" << endl;

 } else {

   cout << "Fałsz" << endl;

 }

 cout << "Liczba = " << i << "\t suma cyfr = " << s

      << "\tkwadrat = " << inum * inum << endl;

 return 0;

}