Hezky vecer preju.
V C++ jsem naprosty zacatecnik, to jen na okraj ;)
Rad bych vytvoril program na rozpoznani prvocisel s tim, ze pri spatnem vstupu me to vyzve k zadani nove hodnoty. Stejne tak na vystupu pokud se nejedna o prvocislo, rad bych, aby se to vypsalo a vyzvalo me to k zadani dalsi hodnoty. Neco jsem nastudoval, neco jsem vytvoril, ale pri spusteni se mi to zacykli a.... a uz mi to za posledni dva dny bloumani co, jak kde leze usima :D Timto bych vas zde chtel poprosit o takove vetsi nakopnuti a nasmerovani spravnym smerem.
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int x, k, T, o;
while (1)
{
{
cout << "Zadej cislo: " << endl;
cin >> x;
while(cin.fail())
{
cout << "Chybny vstup, zkus to znovu." << endl;
cin.clear();
}
}
T=x;
o = 0;
while (T > 0)
{
k = x % T;
if (k == 0)
{
o++;
}
T--;
}
if (o == 2)
{
cout << "Dane cislo je prvocislem." << endl;
}
}
return 0;
}
Vystup slozenych cisel na nemam vubec. Zkousel jsem to prostrednictvim if, ale vzdy mi to delalo neco co nechci.
Pri vstupu jsem pak musel napsat a odentrovat 3 hodnoty abych teprve dostal vystup. V dalsim pripade mi to zase delalo paseku pri zadani spatne hodnoty, kdy pri "n" chybnych znacich mi to hodilo stejne "n" zadosti o novou hodnotu.