Skaičiaus skaitmenys

Kai norime atlikti veiksmus su n-ženklio skaičiaus skaitmenimis, naudojame ciklą WHILE. Algoritmas labai paprastas: surandamas paskutinis skaičiaus skaitmuo (p = n % 10) ir atliekami veiksmai su tuo skaitmeniu. Tai padarius tas skaitmuo iš skaičiaus šalinamas – “numetamas” (n = n / 10). Visas procesas tęsiamas kol n >0. Ciklą atliekant duotasis skaičius “sunaikinamas”, todėl, jei programoje po ciklo reikalinga pradinio skaičiaus reikšmė, ją prieš ciklą reikia priskirti kažkokiam kintamajam.

Raskite duotojo natūraliojo skaičiaus n skaitmenų sumą.

#include <iostream>

using namespace std;

int main()
{
int n, p, sum;
cout << “Įveskite natūralųjį skaičių” << endl;
cin >> n;
sum = 0;
while (n >0)
{
p = n % 10; //nesvarbu keliaženklis skaičius bebūtų, paskutinis skaitmuo randamas vienodai
sum = sum + p; // sumuojamas skaitmuo
n = n / 10; // “numetamas” panaudotas skaitmuo
}
cout << “skaičiaus skaitmenų suma lygi: ” << sum << endl;
return 0;
}

Duotąjį natūralųjį skaičių n parašykite atbulai.

#include <iostream>

using namespace std;

int main()
{
int n, p, atb;
cout << “Įveskite natūralųjį skaičių” << endl;
cin >> n;
atb = 0;
while (n >0)
{
p = n % 10; //nesvarbu keliaženklis skaičius bebūtų, paskutinis skaitmuo randamas vienodai
atb = atb * 10 + p; // sudaromas atbulas skaičius
n = n / 10; // “numetamas” panaudotas skaitmuo
}
cout << “Atbulas skaičius yra: ” << atb << endl;
return 0;
}

 Užduotys

  1. Parašykite programą, kuri suskaičiuotų duotojo skaičiaus a (neturinčio nulinių skaitmenų) skaitmenų sandaugą sand. Pasitikrinkite. Jei a = 611221, tai jo skaitmenų sandauga sand = 24.
  2. Parašykite programą, kuri suskaičiuotų, kiek skaitmenų turi duotas skaičius a. Pasitikrinkite. Jei a = 611221, tai jis turi 6 skaitmenis.
  3. Parašykite programą, kuri suskaičiuotų duoto skaičiaus a skaitmenų aritmetinį vidurkį.
  4. Parašykite programą, kuri suskaičiuotų, kiek duotas skaičius a turi lyginių ir nelyginių skaitmenų. Pasitikrinkite. Jei a = 63258, tai turi būti išvesta: skaičius 63258 turi 3 lyginius ir 2 nelyginius skaitmenis.
  5. Parašykite programą, kuri suskaičiuotų duoto skaičiaus n lyginių bei nelyginių skaitmenų aritmetinius vidurkius.
  6. Parašykite programą, kuri rastų duotojo skaičiaus a pirmąjį skaitmenį. Pasitikrinkite. Jei a = 60203, tai turi būti išvesta: skaičiaus 60203 pirmasis skaitmuo yra 6.
  7. Duoti du skaičiai a ir b. Parašykite programą, kuri rastų šių skaičių pirmųjų skaitmenų sumą. Pasitikrinkite. Jei a = 60203, o b = 432, tai turi būti išvesta: duotųjų skaičių pirmųjų skaitmenų suma yra 10.
  8. Nurodytas natūralusis skaičius n. Parašykite programą, nustatančią, ar jis lygus iš eilės einančių natūraliųjų skaičių (pradedant vienetu) sumai. Pasitikrinkite. Jei n = 15, tai turi būti išvesta: TAIP. Jei n =12, tai turi būti išvesta: NE.