Zajímala by mě jedna věc. Při použití výrazu cout lze použít manipulátor setw a také setfill.
Např. cout << "\n" << setw(neco) << setfill('~~') << vyraz;
Lze toto napsat pomocí printf? Můžete mi někdo napsat jak?
Příspěvky odeslané z IP adresy 90.177.148.–
Teď nevím toto - když mám tenhle kód, tak po zadání písmene se napíše chybová hláška a najede mi úvodní nabídka programu, akorát 2x za sebou. To už fakt nevím.
void pocitani()
{
double cislo;
cout << "cislo: ";
cin >> cislo;
do{
if(cin.fail())
{
cout << "Chyba! " << endl;
cin.clear();
}
else
cout << endl << "Vypocet:" << cislo << " pozadovany rozmer = " << cislo * 15,4 << " cm";
}while(false);
}
"a pak minimalne nacist jeden znak aby ses pak nepokusil za moment o to same "
to nevím, co tím myslíš
jen tak mimochodem, programováním a c++ vůbec se zabývám 14 dní, takže polovinu věcí, co mi tu radíte, vůbec nechápu, nejlíp se učím na příkladech
Když dám toto, a zadám místo čísla písmeno a dám enter, tak mi naběhne hlavní nabídka programu, ale bez jakékoli hlášky chyba a ještě k tomu naběhne 2x za sebou
void pocitani()
{
double cislo;
cout << "cislo: ";
do{
cin >> cislo;
if(cin.fail())
{
cout << "Chyba! " << endl;
cin.clear();
}
}while(false);
cout << endl << "Vypocet:" << cislo << " pozadovany rozmer = " << cislo * 15,4 << " cm";
}
Mám v programu následující kód:
void pocitani()
{
double cislo;
cout << "cislo: ";
cin >> cislo;
cout << endl << "Vypocet:" << cislo << " pozadovany rozmer = " << cislo * 15,4 << " cm";
}
Má vynásobit zadané číslo x 15,4.
Problém je, že když se překliknu a zadám místo čísla písmeno, tak se program zasekne. Vím, že se to dělá nějak přes cin.error, ale netuším jak. Zkouším různé možnosti a pořád nic.
int length(unsigned int cislo){ //vrati delku cisla
int len=0;
while ((cislo/=10)!=0){
len++;
}
return len+1;
}
int maxlength(unsigned int cislo1, unsigned int cislo2){ //vrati delku delsiho cisla
int l1=length(cislo1);
int l2=length(cislo2)+1;
return (l1>l2?l1:l2);
}
int main( int argc, char * argv[] ){
unsigned int cislo1;
unsigned int cislo2;
int w=15; //sirka vystupniho streamu
cout << "Zadej 1.cislo" << endl;
cin >> cislo1;
cout << "Zadej 2.cislo" << endl;
cin >> cislo2;
unsigned int soucin=cislo1*cislo2;
}
cout << "\n" << setw(w) << setfill(' ') << cislo1 << endl;
cout << setw(w-length(cislo2)) << setfill(' ') << "." << cislo2 << endl;
int ml=maxlength(cislo1,cislo2);
cout << setw(w-ml) << setfill(' ') << "" << setw(ml) << setfill('-') << "" << endl;
int d=0;
do{
cout << setw(w-d) << setfill(' ') << (cislo2%10)*cislo1 << endl;
d++;
} while((cislo2/=10)!=0);
int ls=length(soucin);
cout << setw(w-ls) << setfill(' ') << "" << setw(ls) << setfill('-')<< "" <<endl;
cout << setw(w) << setfill(' ') << soucin << endl;
return 0;
}
A jak jinak by to šlo vyřešit? Chci, aby program nabídnul 2 možnosti - po stisknutí 1 se provede jedna funkce, u 2 jiná a když zadá cokoli jiného třeba 3 anebo písmeno, program napíše zkuste to znova...
hm, tak dík za radu, akorát netuším, o čem mluvíš:-(
a jak? já jsem naprostý začátečník, co mám kam napsat?
int main()
{
cout << "nabidka 1 ...1\n"; // tady se voli jedna nebo druha nabidka
cout << "nabidka 2 ...2\n";
int choice;
cout << "\nVase volba: "; // TADY je problem, kdyz ve spustenem programu zadam pismeno, program se zhrouti. Jak udelatabys to vyhodilo nejakou chybovou hlasku?
cin >> choice;
switch (choice)
{
case 1:
prvni();
break;
case 2:
druha();
break;
default:
cout << "Chyba";
main();
}
cout << "\nA - pokracuj, N -konec.\n";
char x;
cin >> an;
if (x == 'a' || x == 'A')
{cout << "\n";
main();}
else {return 0;}
}
Potřebuji na svém webu v xhtml 1.0 strict udělat menu, kdy se při kliknutí na odkaz zobrazí odkazovaná stránka ve stejném okně, tzn. aby se při přidání položky menu nemusel upravovat zdroj každé stránky. Bez php.
To ano, ale musíme napsat manuál, jak se program používá, a to by bylo u mocnin na dva řádky
Ahoj, mám za úkol vytvořit prográmek v C++, k tomu manuál. Jsem začátečník, v C++ se teprve učím. Vůbec netuším, co by takový program měl dělat. Můžete mi poradit nějaké téma? Něco, co zvládne i amatér? Ale aby to bylo použitelné? Díky.