Potreboval by som poradit od skusenejsich 3 otazky...
1. ci tento kod je vhodny? :
#include <iostream>
using namespace std;
void odzadu(int x);
int main()
{
cout << "Zadajte cislo ktore prepise program odzadu: ";
cin >> cislo;
cout << "Cislo " << cislo << " odzadu je ";
odzadu(cislo);
cout << endl;
system("pause");
return 0;
}
void odzadu(int x)
{
int cislo = x;
int vysledok = 0;
for (; cislo > 0; cislo = cislo / 10)
{
vysledok = cislo % 10;
cout << vysledok;
}
}
Pride mi to trochu tak nasilu napisane ale ziadne lepsie riesenie ma nenapadlo... je to standardny postup? (myslim ze je este nejaka moznost presuvat prvky v poli pomocou 2x cyklu for ci ako to je ale to sa mi zda este menej vhodne)
2. Tento kod by mal byt v pohode nie?
#include <iostream>
using namespace std;
int jednotky(int x);
int main()
{
cout << "Zadajte cislo pre spocitanie jednotiek v cisle: ";
cin >> cislo;
int vysledok5 = jednotky(cislo);
cout << "Pocet jednotiek v cisle " << cislo << " je " << vysledok5 << endl;
system("pause");
return 0;
}
int jednotky(int x)
{
int hodnota = x;
int sucet = 0;
for (; hodnota > 0; hodnota = hodnota / 10)
if (hodnota % 10 == 1)
sucet++;
return sucet;
}
3. blba otazka, ale preco nefunguje takyto zapis?
cout << "cislo X odzadu je " << odzadu(cislo) << endl; // void odzadu(int x)
funkcia int mi funguje napr.:
cout << "vysledok je: " << jednotky(cislo) << endl; // int jednotky(int x)
ale s typom void nie :/