Gå til innhold

Hjelp til å lage kalkulator i CPP


Anbefalte innlegg

Hei!

 

Jeg har fått i oppgave å lage en kalkulator som kan addere, trekke fra, multiplisere og dividere.

Har ingen ledetråd om hvordan jeg skal lage denne.

Noen som kan hjelpe meg her?

Jeg er veldig "ny" i programmet.

 

Trenger enten en guide/veiledning eller bare selve koden til kalkulatoren så får jeg studere den.

btw. den må helst være på norsk. ;)

 

Takker og bukker på forhånd :)

Lenke til kommentar
Videoannonse
Annonse

Oppgave, jaha? Studerer du noe?

 

Jeg kan begynne litt, C++ heter det og det er ikke et program... det er et språk. Cpp er filendelsen, eller en av filendelsene som er brukt på C++ kildekodefiler. Programmet du skal skrive vil jeg tippe er terminal/cmd basert? Ikke ekte GUI ute å går på et så tidlig stadig får vi håpe? Uansett, GUI er kjedelig. Les litt om grunnleggende syntaks, og hvordan du bruker cout og cin.

Endret av data_jepp
Lenke til kommentar

Det beste er om du forsøker å kode kalkulatoren og poster her hvis/når du sitter fast.

Og det er ganske vanskelig å gi deg en guide som ikke gir deg svaret, noe som ikke er helt bra.

 

Men som data_jepp sa, les på std::cout og std::cin, og switch-case statements.

Med det burde du kunne komme opp med ett forslag, og så kan vi hjelpe deg når du sitter fast.

 

 

 

PS. De løsningene som kommer opp via google finner også foreleser, så du burde ikke kopiere dem...

Lenke til kommentar

Programmet jeg bruker heter devcpp og ja jeg skal lage en cmd basert fil.

Som sagt har jeg ikke peiling hvor jeg skal begynne så derfor har jeg ingenting å lime inn fra det jeg har gjort.

 

å lese om cin og cout hjelper meg lite å finne ut hva slags kommandoer som lager selve kalkulator delen.

 

Meningen er at når du åpner cmd fila så spør den om du vil plusse, trekke fra, gange, eller dele på, også skal du velge ved å trykke +, -, * eller /.

Deretter Trykke inn 2 tall du vil eks plusse sammen, så får du svaret. The end.

 

Det jeg trenger hjelp med er koden jeg skal skrive inn i devcpp...

Lenke til kommentar
Som sagt har jeg ikke peiling hvor jeg skal begynne så derfor har jeg ingenting å lime inn fra det jeg har gjort.

 

Du nevnte at du hadde fått oppgaven av noen. Det virker som om du har fått en oppgave du ikke har forutsetninger for å greie. Hvis jeg var deg ville jeg snakket med de som ga deg oppgaven.

 

Det jeg trenger hjelp med er koden jeg skal skrive inn i devcpp...

 

Du må være mer spesifikk. Det virker som om du vil ha koden server på et fat.

Lenke til kommentar

Ja jeg kan snakke med de som ga meg oppgaven, men får ikke gjort det før neste fredag. Og da er det for seint.

 

Hva jeg kan? jeg kan ingenting hvis jeg ikke har noe å gå ut i fra. Jeg har ikke sjans til å lage noe fra scratch uten å ha noe å se etter.

 

Du må være mer spesifikk. Det virker som om du vil ha koden server på et fat.

 

Ja takk, tar gjerne koden på et fat. Trenger ikke si noe mer spesifikt for at noen som klarer å mekke en enkel kalkulator skal skjønne hva jeg vil.

 

haalo: Les en tutorial.

 

Hadde jeg hatt en tutorial å lese så hadde jeg gjort det..

Må ha gjort dette innen i morgen kveld så har ikke tid til å sitte å lese igjennom hele c++ boka og gjette på hvordan jeg skal gjøre det. ;)

Lenke til kommentar

Her får du en veldig enkel kalkulator, selv om du burde ha skrevet den selv. Utestet.

#include <iostream>
using namespace std;
int calcSvar(int tall1, int tall2, char regneart);

int main()
{
 int  tall1;
 int  tall2;
 char regneart;

 cout << "Skriv regnestykket: "<< endl;
 cin >> tall1 >> regneart >> tall2;
 int svar = calcSvar(tall1, tall2, regneart);
 cout << "Svaret blir: " << svar;

 return 0;
}

int calcSvar(
 int  tall1,
 int  tall2,
 char regneart)
{
 int svar;
 if (regneart == '+') svar = tall1 + tall2;
 else if (regneart == '-') svar = tall1 - tall2;
 else if (regneart == '*') svar = tall1 * tall2;
 else svar = tall1 / tall2;
 return svar;
}

Lenke til kommentar
Ja jeg kan snakke med de som ga meg oppgaven, men får ikke gjort det før neste fredag. Og da er det for seint.

 

Må ha gjort dette innen i morgen kveld så har ikke tid til å sitte å lese igjennom hele c++ boka og gjette på hvordan jeg skal gjøre det. ;)

 

Men hvordan fikk du denne oppgaven? Det er jo sjeldent at man får en oppgave man er helt ukvalifisert til å gjøre...

 

Studerer du informatikk/programmering og ligger etter med pensum, eller?

Lenke til kommentar
Ja jeg kan snakke med de som ga meg oppgaven, men får ikke gjort det før neste fredag. Og da er det for seint.

 

Må ha gjort dette innen i morgen kveld så har ikke tid til å sitte å lese igjennom hele c++ boka og gjette på hvordan jeg skal gjøre det. ;)

 

Men hvordan fikk du denne oppgaven? Det er jo sjeldent at man får en oppgave man er helt ukvalifisert til å gjøre...

 

Studerer du informatikk/programmering og ligger etter med pensum, eller?

 

 

Ja jeg studerer Drift og sikkerhet innen datateknikk, men har ikke fått teken på dette enda. Har nå planer om å gjøre dette. Men vi har leveringsfrister som vi må holde, og jeg har skjønt hvordan jeg skal løse denne oppgaven. Har planer om å lære meg dette grundigere etterhvert men har ikke kommet så langt enda. Det er selv studie med innleveringer. takkk

Lenke til kommentar

Hei,

Muligens litt sent siden du hadde en frist for denne kalkulatoren, men hvis du ikke har noe imot å lese engelsk ville jeg anbefalt å sjekke ut www.cprogramming.com... Jeg kunne ingenting før jeg begynte å lese der og nå etter noen uker klarer jeg helt fint å lage denne kalkulatoren du spør om. Nå er ikke jeg spesielt kjapp til å lære så hvis du lærer fort så vil du sikkert klare å lage en på noe rundt en uke.

 

Nå er det kansje ikke det best skrevne programmet, men siden jeg bare har lest de 5-6 første kapitlene (hvert kapittel varierer fra en A4 side til kansje en tre fire) så er jeg bare fornøyd at det funker som det skal.

 

#include <iostream>
using namespace std;

int main()

{
int z, choice, choice2;
double x, y;

z = 0;

cout << "Hello and welcome to my simple calculator.\n";

while ( z < 1 ){
cout << "Tell me what you want to do:\n";
cout << "1. +\n";
cout << "2. -\n";
cout << "3. *\n";
cout << "4. /\n";
cout << "5. Exit\n";
cin >> choice;
cout << endl;

switch ( choice ){
	case 1:
		cout << "Type the two numbers that you want to add (+):\n";
		cin >> x >> y;
		cout << "The product of your two numbers are: " << x + y << "\n";
		break;
	case 2:
		cout << "Type the two numbers that you want to subtract:\n";
		cin >> x >> y;
		cout << "The product of your two numbers are: " << x - y << "\n";
		break;
	case 3:
		cout << "Type the two numbers that you want to multiply (*):\n";
		cin >> x >> y;
		cout << "The product of your two numbers are: " << x * y << "\n";
		break;
	case 4:
		cout << "Type the two numbers that you want to divide (/):\n";
		cin >> x >> y;
		cout << "The product of your two numbers are: " << x / y << "\n";
		break;
	case 5:
            cout << "Exiting...\n";
            z++;
            goto thankyou;
            break;
	default:
               cout << "Invalid command! Quitting...\n";
               z++;
               goto theend;
               break;
	}
cout << endl << "Do you want to do it again? 1.yes/2.no\n";
cin >> choice2;	
switch ( choice2 ){
          case 1:
               system ("CLS");
               break;
          case 2:
               thankyou:
               cout << "Thank you for using my calculator!\n";
               z++;
               break;
          default:
                  cout << "Invalid command! The program will now quit.\n";
                  z++;
                  break;
               }
}
theend:
cout << endl;
system ("PAUSE");
}

Lenke til kommentar
  • 6 måneder senere...
Jada, mye penere å skrive ADD(MULTIPLY(2,5),SUB(DIV(20,5),2)) enn 2 * 5 + 20 / 5 - 2

 

Ehe, tror du har tatt dette heilt feil. Dette var kun enkle eksempler på hvordan man kunne gjøre det i en liten kalkulator. Hvis du for eks. har mange kalkuleringer som er av samme type kan du lett bruke en macro for å gjøre koden din litt mer ryddig. But hey, du trenger ikke følge min råd var bare et tips jiiz.

 

Alle har sine meninger og min er iaf. at ved bruk av macro's, your code so look's way better :)

Endret av zorgion
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...