Räkna tal i en talföljd med funktioner c++

Permalänk

Räkna tal i en talföljd med funktioner c++

Hej! Jag pluggar en distanskurs om programmering i c++ och jag är en riktig nybörjare som skulle behöva hjälp. Uppgiften går ut på att man matar in två tal och en operator (addition, multiplikation eller kvadrering). Som exempel: matar in värde 3 och 5. Samt väljer beräkning addition. Då ska beräknas: 3+4+5=12. Osv. Jag tror jag har endel kvar på koden men skulle vara tacksam för all hjälp jag kan få då jag har kört fast lite.

#include <iostream>
#include <cmath>

using namespace std;

//deklarera funktion
void skrivInfo ();
int lasEttTal ();
int lasEttTal2 ();
int lasOp (int summa, int produkt, int kvadrat);
int addition(int x,int y);
int kvadrat(int x,int y);
int produkt(int x, int y);
int berakna(int x, int y);

int main()
{
int num1;
int num2;
int summering=0;
int multiplikation=1;
int kvadrering=0;
char op;
char a,m,k;
// int svar;

skrivInfo();
{
cout << "Detta program kommer att oberoende tal du skriver utföra beräkningar. Du väljer beräkningsmetod, du kommer få tre val: a,m eller k. Om du väljer a, kommer programmet addera, om du väljer m, kommer programmet multiplicera, om du väljer k,kommer programmet kvadrera \n";
}

num1=lasEttTal();
{
cout << "skriv tal ett\n";
cin >> num1;
}
num2=lasEttTal2();
{
cout << "skriv tal ett till\n";
cin >> num2;
}

op=lasOp(summering,multiplikation,kvadrering);
{
cout << "skriv en op\n";
cin >> a>>m>>k;
}

summering=berakna(num1,num2);

{

cout<<"Addition är: "<<summering<<endl;

}

}

// Def av funktioner

void skrivInfo (){}
int lasEttTal ()
{
return 0;
}
int lasEttTal2 ()
{
return 0;
}
int lasOp (int summa, int produkt, int kvadrat)
{
return 0;
}

int addition(int x,int y)
{
return 0;
}

int berakna(int x, int y)
{

return ((x+y) *((y-x)+1) /2);

}

Permalänk
Medlem

Använd kodtaggar.

Permalänk
Medlem

Gör en i taget. Förslagsvis addition.

Tänk sedan hur en sån funktion borde se ut.

Den lär ta två parametrar(start och slut-tal).
Den ska addera alla tal från start till slut till en summa.
Alltså
Sum = sum + tal. Detta bör förslagsvis läggas i en loop som för varje iteration ökar värdet av tal med 1 och slutar loopa när tal = sluttal. Visst?

Sedan är det bara utöka funktionaliteten i funktionen med multiplikation och lägga till operator som parameter.

Försök lära dig skriva pseudokod, kan vara bra i början för att förstå flödet av kod. Typ
Mata in tal
Välj operator
Vid addition så addera alla tal mellan inmatade till summan.
Vid multiplikation så multiplicera alla tal mellan inmatade till summan.
Osv osv..
Försök även lära dig använda debuggern, kommer hjälpa dig oerhört med att förstå vad koden gör och exakt var det går fel.

Skickades från m.sweclockers.com

Visa signatur

Äsch...

Permalänk

Jag säger som vanligt:

1) Stäng editorn och ta fram penna och papper.
2) Hur skulle du göra "för hand" för att lösa uppgiften?
3) Skriv på svenska (eller annat språk som du behärskar) instruktioner som är så detaljerade att din polares korkade lillebror skulle kunna lösa uppgiften om han följde dem.
4) Följ dina instruktioner och kolla om du räknar rätt. Om det blir fel fundera på vad som inte stämde i instruktionerna och backa till punkt 3.
5) Översätt dina instruktioner till lämpligt programspråk.

Du måste veta hur du skall lösa problemet innan du försöker skriva ett program som gör det. Annars blir det inget bra. Det här kanske låter krångligt men när du programmerat ett tag kommer du automatiskt bryta ner problemet i mindre delar, loopar och villkor, och då kan du skippa att skriva instruktionerna till polarens lillebror, men du måste fortfarande veta hur du skall lösa uppgiften innan du börjar skriva kod.

Börja på punkt 1 nu!

Permalänk
Skrivet av barpapappan1234:

Hej! Jag pluggar en distanskurs om programmering i c++ och jag är en riktig nybörjare som skulle behöva hjälp....

Fick du den hjälp du behövde för att lösa uppgiften?