ematematikas
Kategorijos +Nauja tema Prisijungti        

Ciklas while (kiek kokių skaitmenų yra duotame skaičiuje)

Informatika Peržiūrų skaičius (138)

Sveiki, gal kas galit padėti išspręsti šį uždavinį (panaudojant tik vieną while (jei įmanoma)), {"užvesti ant kelio"}?


Parašykite programą, kuri suskaičiuotų kiek kokių skaitmenų yra duotame skaičiuje. Atspausdinti reikia tik tuos skaitmenis ir jų kiekius – kurių yra tame skaičiuje.

0

Ka daryt bandei?

0

Sugebėjau rasti skaičių kiekį ir parašyti skaičius atskirai

int a,i,b;
cout<<"Ivesk skaiciu"<<endl;
cin>>a;

while (a>0)
{
b=a%10;
i++;
cout<<"Kiekis"<<i<<"\n"<<"Skaicius="<<b<<"\n";

a=a/10;
}

0

Dabar belieka tame while su kiekvienu skaiciu:
if (b == 1) {
po1++;
}
ir po while tikrint jeigu po1 nelygu 0 ji parasai

1

{
int a,b,b1=0,b2=0,b3=0,b4=0,b5=0,b6=0,b7=0,b8=0,b9=0;
cout<<"Ivesk skaiciu \n";
cin>>a;

while (a>0)
{

b=a%10;
if (b==1) b1++;
if (b==2) b2++;
if (b==3) b3++;
if (b==4) b4++;
if (b==5) b5++;
if (b==6) b6++;
if (b==7) b7++;
if (b==8) b8++;
if (b==9) b9++;

cout<<"Skaicius="<<b<<"\n";

a=a/10;
}
if (b1!=0) cout<<"Kiekis:"<<b1<<"\n";
if (b2!=0) cout<<"Kiekis:"<<b2<<"\n";
if (b3!=0) cout<<"Kiekis:"<<b3<<"\n";
if (b4!=0) cout<<"Kiekis:"<<b4<<"\n";
if (b5!=0) cout<<"Kiekis:"<<b5<<"\n";
if (b6!=0) cout<<"Kiekis:"<<b6<<"\n";
if (b7!=0) cout<<"Kiekis:"<<b7<<"\n";
if (b8!=0) cout<<"Kiekis:"<<b8<<"\n";
if (b9!=0) cout<<"Kiekis:"<<b8<<"\n";

Parašiau šią programą, (bet atsakymas atrodo nelabai tvarkingai :/ gal galima ji kažkaip "normaliau" parašyt ?)

pvz.: skaičius-112331
Ivesk skaiciu
112331
Skaicius=1
Skaicius=3
Skaicius=3
Skaicius=2
Skaicius=1
Skaicius=1
Kiekis:3
Kiekis:1
Kiekis:2

0

Pamirsai kad skaitmuo gali buti lygus 0 ir as suprantu tau reikia tiesiog parasyti kiek ir kokiu yra skaitmenu tai pvz: Skaiciuje penketu yra 2

0

Ačiū parašiau šią programą ir viskas puikiai veiki ! :)

int a,b,b0=0,b1=0,b2=0,b3=0,b4=0,b5=0,b6=0,b7=0,b8=0,b9=0;
cout<<"Ivesk skaiciu \n";
cin>>a;

while (a>0)
{

b=a%10;
if (b==0) b0++;
if (b==1) b1++;
if (b==2) b2++;
if (b==3) b3++;
if (b==4) b4++;
if (b==5) b5++;
if (b==6) b6++;
if (b==7) b7++;
if (b==8) b8++;
if (b==9) b9++;


a=a/10;
}
if (b0!=0) cout<<"0 "<<"kiekis:"<<b0<<"\n";
if (b1!=0) cout<<"1 "<<"kiekis:"<<b1<<"\n";
if (b2!=0) cout<<"2 "<<"kiekis:"<<b2<<"\n";
if (b3!=0) cout<<"3 "<<"kiekis:"<<b3<<"\n";
if (b4!=0) cout<<"4 "<<"kiekis:"<<b4<<"\n";
if (b5!=0) cout<<"5 "<<"kiekis:"<<b5<<"\n";
if (b6!=0) cout<<"6 "<<"kiekis:"<<b6<<"\n";
if (b7!=0) cout<<"7 "<<"kiekis:"<<b7<<"\n";
if (b8!=0) cout<<"8 "<<"kiekis:"<<b8<<"\n";
if (b9!=0) cout<<"9 "<<"kiekis:"<<b8<<"\n";


return 0;
}

0

Norėdami rašyti žinutes privalote prisijungti!