Kalkulacka - funkce [MC] [MR] [M+] [M-]
Moderátor: Moderátoři
Kalkulacka - funkce [MC] [MR] [M+] [M-]
Zdravim vsechny mile lidi, co maji chvili na to precist si muj prispevek ba dokonce na nej odpovedet.
Ucim se v jazyku C programovat a snazim se o vytvoreni kompletni (zakladni) kalkulacky jako je ve windowsm, jen v podobe textovem editoru. Umi vsechny zakladni funkce.. od scitani po odmocnovani. Ovsem co neumi je funkce s M.confused smiley tedy:
[MC] = "Vymazat paměť"
[MR] = "Memory Recall" [MR] = "Memory Recall"
[M+] = "Add to Memory" [P +] = "Přidat do paměti"
[M-] = "Subtract from Memory" [M-] = "Odečíst z paměti"
Mohl by mi nekdo pomoct s kodem, ktery lze vlozit do zdrojaku, nebo s funkcemi, ci alespon vysvetlenim? Jeste neumim moc aplikovat, jsem zacatecnik.
Budu vdecny za kazdou radu. Vsem uprimne diky.... smiling smiley
Ucim se v jazyku C programovat a snazim se o vytvoreni kompletni (zakladni) kalkulacky jako je ve windowsm, jen v podobe textovem editoru. Umi vsechny zakladni funkce.. od scitani po odmocnovani. Ovsem co neumi je funkce s M.confused smiley tedy:
[MC] = "Vymazat paměť"
[MR] = "Memory Recall" [MR] = "Memory Recall"
[M+] = "Add to Memory" [P +] = "Přidat do paměti"
[M-] = "Subtract from Memory" [M-] = "Odečíst z paměti"
Mohl by mi nekdo pomoct s kodem, ktery lze vlozit do zdrojaku, nebo s funkcemi, ci alespon vysvetlenim? Jeste neumim moc aplikovat, jsem zacatecnik.
Budu vdecny za kazdou radu. Vsem uprimne diky.... smiling smiley
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
Tohle by mela byt ta lehci vec na kalkulacce. Jenom si zalozis novou promennou a s tou pracujes. Kdyz se stiskne "M+", udelas jenom pamet = pamet + vstup. Obdobne pak s "M-".
PC: AMD Athlon II X4 645, Evolve Zeppelin GOLD 2x2 GB + A-Data Extreme Edition 2x1 GB, WD Caviar Black 1 TB, Sapphire Radeon HD 5850 Xtreme 1 GB GDDR5, LCD Samsung P2770HD 27"
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu
NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu

NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
aha.. no a když budu chtít vypsat všechny vypočitané přiklady do souboru? nevíš jak to udělám?
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
Musis si logovat vsechna zadani do nejake promenne. Popr. hned zapisovat do souboru. Dela se to pres fopen, kterym soubor otevres a fwrite zapisujes do otevreneho souboru. Na konci jej pomoci fclose zavres.
PC: AMD Athlon II X4 645, Evolve Zeppelin GOLD 2x2 GB + A-Data Extreme Edition 2x1 GB, WD Caviar Black 1 TB, Sapphire Radeon HD 5850 Xtreme 1 GB GDDR5, LCD Samsung P2770HD 27"
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu
NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu

NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
jj tak nejak tomu rozumim, ale nevim jak to aplikovat... 

Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
Jak jak?
Proste... to tam dopises, ne?
Tohle je primitivni kod, ktery otevre (popr. vytvori) soubor a.txt a zapise do nej text ahoj, jak se mas?.

Tohle je primitivni kod, ktery otevre (popr. vytvori) soubor a.txt a zapise do nej text ahoj, jak se mas?.
Kód: Vybrat vše
char *neco = "ahoj, jak se mas?";
FILE *sbr;
sbr = fopen("a.txt", "a+");
fwrite(neco, 1, 17, sbr);
fclose(sbr);
PC: AMD Athlon II X4 645, Evolve Zeppelin GOLD 2x2 GB + A-Data Extreme Edition 2x1 GB, WD Caviar Black 1 TB, Sapphire Radeon HD 5850 Xtreme 1 GB GDDR5, LCD Samsung P2770HD 27"
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu
NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu

NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
kdyz mam program :
#include <stdio.h>
main()
{
float x,y,vys;
int op;
printf("Program kalkulacka (varianta s if)\n\n");
printf("Zadej x:");
scanf("%f",&x); /* nacteme x */
printf("Zadej y:");
scanf("%f",&y); /* nacteme y */
printf("Zadej operaci (1 znamena +,2 je -,3 je *, 4 je / :");
scanf("%d",&op);
if (op==1)
{
vys=x+y;
}
if (op==2)
{
vys=x-y;
}
if (op==3)
{
vys=x*y;
}
if (op==4)
{
vys=x/y;
}
printf("Vysledek operace je: %f\n",vys);
}
Jak udelam, aby mi program vypsal do ext. souboru vsechny pocty, ktere provedl hezky za seobou?
to uz tak lehky kod jiste nebude...
#include <stdio.h>
main()
{
float x,y,vys;
int op;
printf("Program kalkulacka (varianta s if)\n\n");
printf("Zadej x:");
scanf("%f",&x); /* nacteme x */
printf("Zadej y:");
scanf("%f",&y); /* nacteme y */
printf("Zadej operaci (1 znamena +,2 je -,3 je *, 4 je / :");
scanf("%d",&op);
if (op==1)
{
vys=x+y;
}
if (op==2)
{
vys=x-y;
}
if (op==3)
{
vys=x*y;
}
if (op==4)
{
vys=x/y;
}
printf("Vysledek operace je: %f\n",vys);
}
Jak udelam, aby mi program vypsal do ext. souboru vsechny pocty, ktere provedl hezky za seobou?
to uz tak lehky kod jiste nebude...

Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
Reseni je spousta, tady treba jedno z nich...
Kód: Vybrat vše
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
float x,y,vys;
int op;
char *text;
FILE *soubor;
soubor = fopen("a.txt", "a+");
printf("Program kalkulacka (varianta s if)\n\n");
printf("Zadej x: ");
scanf("%f",&x);
printf("Zadej y: ");
scanf("%f",&y);
printf("Zadej operaci (1 znamena +,2 je -,3 je *, 4 je / :");
scanf("%d",&op);
if (op==1) {
vys=x+y;
sprintf(text, "%f + %f = %f\n", x, y, vys);
}
if (op==2) {
vys=x-y;
sprintf(text, "%f - %f = %f\n", x, y, vys);
}
if (op==3) {
vys=x*y;
sprintf(text, "%f * %f = %f\n", x, y, vys);
}
if (op==4) {
vys=x/y;
sprintf(text, "%f / %f = %f\n", x, y, vys);
}
printf("Vysledek operace je: %f\n",vys);
fwrite(text, 1, strlen(text), soubor);
fclose(soubor);
system("PAUSE");
return EXIT_SUCCESS;
}
PC: AMD Athlon II X4 645, Evolve Zeppelin GOLD 2x2 GB + A-Data Extreme Edition 2x1 GB, WD Caviar Black 1 TB, Sapphire Radeon HD 5850 Xtreme 1 GB GDDR5, LCD Samsung P2770HD 27"
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu
NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu

NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
děkuji moc!!!!
ovšem jsem začátečník a učím se v C! pokud se nemýlím #include <iostream> // a direktiva preprocesoru using namespace std patří pod C+. ostatních příkazů si ale nejsem jistý, které si liší. je možné popsat příkazy v programu nad tímhle textem, které jsou z C+ a připsat k tomu přikazy v C?
ovšem jsem začátečník a učím se v C! pokud se nemýlím #include <iostream> // a direktiva preprocesoru using namespace std patří pod C+. ostatních příkazů si ale nejsem jistý, které si liší. je možné popsat příkazy v programu nad tímhle textem, které jsou z C+ a připsat k tomu přikazy v C?
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
Jooo, tak to ja nevim
Ja v C a C++ taky moc neumim, takze nevim, co kam patri...
EDIT: jmenne prostory (namespace) se tam stejne nepouzivaji, takze ten radek muzes smazat bez vlivu na funkcnost. Stejne tak hlavickove soubory staci prepsat na ciste C hlavicky a jde to...

EDIT: jmenne prostory (namespace) se tam stejne nepouzivaji, takze ten radek muzes smazat bez vlivu na funkcnost. Stejne tak hlavickove soubory staci prepsat na ciste C hlavicky a jde to...
Kód: Vybrat vše
#include <stdio.h>
#include <stdlib.h>
PC: AMD Athlon II X4 645, Evolve Zeppelin GOLD 2x2 GB + A-Data Extreme Edition 2x1 GB, WD Caviar Black 1 TB, Sapphire Radeon HD 5850 Xtreme 1 GB GDDR5, LCD Samsung P2770HD 27"
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu
NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu

NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]

Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
Vzdyt to funguje...
Kód: Vybrat vše
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
float x,y,vys;
int op;
char *text;
FILE *soubor;
soubor = fopen("a.txt", "a+");
printf("Program kalkulacka (varianta s if)\n\n");
printf("Zadej x: ");
scanf("%f",&x);
printf("Zadej y: ");
scanf("%f",&y);
printf("Zadej operaci (1 znamena +,2 je -,3 je *, 4 je / :");
scanf("%d",&op);
if (op==1) {
vys=x+y;
sprintf(text, "%f + %f = %f\n", x, y, vys);
}
if (op==2) {
vys=x-y;
sprintf(text, "%f - %f = %f\n", x, y, vys);
}
if (op==3) {
vys=x*y;
sprintf(text, "%f * %f = %f\n", x, y, vys);
}
if (op==4) {
vys=x/y;
sprintf(text, "%f / %f = %f\n", x, y, vys);
}
printf("Vysledek operace je: %f\n",vys);
fwrite(text, 1, strlen(text), soubor);
fclose(soubor);
system("PAUSE");
return EXIT_SUCCESS;
}
PC: AMD Athlon II X4 645, Evolve Zeppelin GOLD 2x2 GB + A-Data Extreme Edition 2x1 GB, WD Caviar Black 1 TB, Sapphire Radeon HD 5850 Xtreme 1 GB GDDR5, LCD Samsung P2770HD 27"
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu
NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu

NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
Tobě to fakt funguje? ja to pustim, ale kdyz zadam cislo operace. hodi to chybu... a program prestal pracovat:(
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
Ano, funguje. Dev-C++ 4.9.9.2.
PC: AMD Athlon II X4 645, Evolve Zeppelin GOLD 2x2 GB + A-Data Extreme Edition 2x1 GB, WD Caviar Black 1 TB, Sapphire Radeon HD 5850 Xtreme 1 GB GDDR5, LCD Samsung P2770HD 27"
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu
NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu

NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]


- Přílohy
-
- nejde.jpg (50.63 KiB) Zobrazeno 39384 x
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
To mi spis prijde jako nejaky problem s pravy. Nespoustis to v Program Files? Zkus program "Projekt1.exe" zkopirovat na plochu a spustit tam.
PC: AMD Athlon II X4 645, Evolve Zeppelin GOLD 2x2 GB + A-Data Extreme Edition 2x1 GB, WD Caviar Black 1 TB, Sapphire Radeon HD 5850 Xtreme 1 GB GDDR5, LCD Samsung P2770HD 27"
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu
NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
NB1: Asus UL30A-QX141V - C2D SU7300, 2x2GB DDR2 RAM, 320 GB, 13,3" LED LCD... 12 hod provozu

NB2: MSI GX610PX - AMD Turion X2 TL-58, 2x1GB DDR2 RAM, 250 GB, ATI HD2600 256 MB GDDR3
NB3: IBM R40 - Intel Pentium 4-M, 512 MB DDR, 40 GB, ATI Radeon 7500 32 MB
mobil: Sony Ericsson Xperia X1
YouCan.cz - tvorba webových stránek a internetových projektů na míru
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
ne to jiste neni... navic ja ten program normalne pustim... jak je videt na obrazku, vyhodi chybu az v 3 sekvenci.. tedy kdyz zvolim operaci jako chci.. ted at zvolim kteroukoliv ze 4 tak to hodi chybu...
Tedy chyba by mohla byt mozna nekde tady:
fwrite(text, 1, strlen(text), soubor);
fclose(soubor);
system("PAUSE");
return EXIT_SUCCESS;
je mozne to zkusit prosim jeste nejak predelat?
ja uz si s tim fakt nevim rady:(
Tedy chyba by mohla byt mozna nekde tady:
fwrite(text, 1, strlen(text), soubor);
fclose(soubor);
system("PAUSE");
return EXIT_SUCCESS;
je mozne to zkusit prosim jeste nejak predelat?
ja uz si s tim fakt nevim rady:(
Re: Kalkulacka - funkce [MC] [MR] [M+] [M-]
tak ja uz na to prisel.. i za pomoci jinych. ale Tobe taky dekuji za cenne rady... jo a to proc mi to padalo byla alokace pameti... tzn, ze tam jeste chybi bohuzel podstatna malickost, a to treba tohle
char *text[1024];
Tak vime pro priste a jeste jednou dekuji!!!!
char *text[1024];
Tak vime pro priste a jeste jednou dekuji!!!!