diff --git a/du4/program.c b/du4/program.c index dfe07fd..5b6a956 100644 --- a/du4/program.c +++ b/du4/program.c @@ -2,6 +2,104 @@ #include #include -int main(){ - return 0; + + /* + Name: Kalkulacka + Copyright: + Author: David Jancik + Date: 07/12/10 12:22 + Description: Aplikace Kalkulačka - '+', '-', '*', '/', '^', 'o' + Thanks: V. Pospíchal - Děkuji moc za pomoc s funkcí na odmocňování. + */ + + //načtení knihoven + //tělo +int main() { + + int i,j; // pro cyklus + double cislo, cislo2, vysledek, vysledek2, vysledek3; /*aby se mohlo počítat s desetinnými čísly*/ + char operand; //načítání znaků + char pokracovat; + + //přivítání do aplikace + printf("Vitejte v aplikaci kalkulacka\nZadejte priklad napr.: 5.58 + 5.89 a potvrdte enterem\nPro napovedu zadejte '1?1'\nBy sczdavos - www.itnetwork.cz\n"); + + /*cyklus - vypočítá příklad a vrátí se na začátek a počítá do doby až je splněná podmínka + pokud je splněná podmínka cislo, cislo2 = 0 a operand = k program vypíše text a ukončí se*/ + + do { + printf("Zadejte priklad:\n"); + scanf("%lf %c %lf", &cislo, &operand, &cislo2); // nacte prvni cislo, znamenko, druhe cislo + + /*pokud se operand rovna deleni a delitel se rovna nule vypise chybu*/ + if((operand == '/') && (cislo2 == 0)){ + printf("Nulou nelze delit"); + } + + //prepinac nacte promennou k a podle toho co v ni je provede dalsi prikazy + switch(operand){ + case'+': + printf("%lf", cislo+cislo2); // jestlizze obsahuje + nacte se i a j a sectou se + break; // ukonceni case pise se pod kazdym case + + case'-': + printf("%lf", cislo-cislo2); + break; + + case'*': + printf("%lf", cislo*cislo2); + break; + + case'/': + printf("%lf", cislo/cislo2); + break; + + case'^': + /*do promenne vysledek se nacte cislo a to se pak nasobi cislem tolikrat dokud neni splnena podminka*/ + vysledek = cislo; + for (i=1; i0){ + vysledek2 = cislo + 1; //cislo + libovolne cislo + vysledek3 = vysledek2 / (cislo2+1); + + for(i = 1; i<100; i++){ + vysledek = cislo; + for(j = 1; j