[C++] Uitkomst berekening gebruiken

Pagina: 1
Acties:

  • martini1
  • Registratie: Februari 2007
  • Laatst online: 23-04-2022
Hallo,

Ben net begonnen een beetje C++ te gebruiken, al diverse tutorials gelezen maar kom er niet helemaal uit om een uitkomst van een berekening te gebruiken bij de volgende berekening. Dit is mijn prgrammatje
#include <iostream>
using namespace std;
int main()
{

double a, b, c, d;

cout << "1e nummer:";
cin >> a;
cout << "2e nummer:";
cin >> b;

cout << "De antwoorden zijn:";
cout << "\n" ;
cout << "\nC:" << a * 25;
cout << "\nD:" << b * 100;
cout << "\n" ;
cout << "\nOpgeteld:" << C + D;

main();

system("PAUSE");
return 0;
}

Het optellen van C en D lukt me niet werkend te krijgen.
alvast bedankt

  • Mijzelf
  • Registratie: September 2004
  • Niet online
c++ is case sensitive. Aangezien je C en D nergens hebt gedeclareerd, kun je ze ook niet optellen.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Kijk hier eens even naar: Debuggen: Hoe doe ik dat? Als je dit even doorneemt kun je voortaan zélf dergelijk (toch wel) simpele problemen oplossen. Wel zo handig om te weten in/tijdens je leertraject.

Verder hebben we code tags voor als je code wil posten ;)

[ Voor 28% gewijzigd door RobIII op 24-09-2009 18:06 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Manu_
  • Registratie: Oktober 2008
  • Laatst online: 09-09 17:49
Wat wil je precies doen?

Het eerste dat opvalt is dat je kleine letters c en d moet gebruiken, die heb je gedeclareerd. En c en d hebben nog geen waarde in je dikgedrukte regel, er valt dus niet zo veel mee te rekenen. Je moet eerst bijvoorbeeld c = a * 25; en d = 100 * b; toevoegen. Verder hoef je main() niet meer aan te roepen, daar is het immers de main voor.

  • martini1
  • Registratie: Februari 2007
  • Laatst online: 23-04-2022
hoe precies programmeer ik dat de c= a*25 is en d= b*100 is? met cin >>?

  • Mijzelf
  • Registratie: September 2004
  • Niet online
gewoon:
c = a * 25;
d = b * 100;

  • martini1
  • Registratie: Februari 2007
  • Laatst online: 23-04-2022
gelukt haha, leek me veel moeilijker. Bedankt

  • Sebazzz
  • Registratie: September 2006
  • Laatst online: 16-09 15:42

Sebazzz

3dp

Wat is trouwens de reden dat je
C++:
1
2
3
cout << "\n" ;
cout << "\n" ;
...

in plaats van
C++:
1
cout << std::endl << std:endl;
gebruikt?

[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

Waarom moet je per se endl gebruiken? Het enige verschil is dat endl ook een flush forceert, maar dat is in dit geval niet nodig (een read van cin forceert ook een flush)

Overigens mag je main() officieel niet zelf aanroepen, en daarnaast gebruikt je programma zo steeds meer en meer stackgeheugen (al kan de compiler dit best optimizen met een jump ipv een call). Je hebt trouwens ook geen stopconditie, maar als je die wel had dan zou je N pauses uitvoeren, 1 voor elke keer dat je main() nog een keer hebt aangeroepen.

[ Voor 53% gewijzigd door .oisyn op 24-09-2009 21:18 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • doctormetal
  • Registratie: Februari 2006
  • Laatst online: 13:31
.oisyn schreef op donderdag 24 september 2009 @ 21:16:
Waarom moet je per se endl gebruiken? Het enige verschil is dat endl ook een flush forceert, maar dat is in dit geval niet nodig (een read van cin forceert ook een flush)
Er is wel meer verschil hoor. Een end-of-line is voor het ene systeem \n, voor een ander \r\n en ook \r komt voor. Door std::endl te gebruiken wordt vanzelf de juiste gebruikt.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

Complete onzin. Een \n wordt altijd juist geïnterpreteerd bij text streams (wat cout by default is), en een endl zal per definitie een \n uitvoeren. Open maar eens een binary stream, en doe daar een endl op. Je zal zien dat hij onder Windows dan gewoon een kale \n uitvoert, ipv een \r\n.
27.6.2.7
C++:
1
2
3
4
namespace std {
    template <class charT, class traits>
        basic_ostream<charT,traits>& endl(basic_ostream<charT,traits>& os);
}

1 Effects: Calls os.put(os.widen(’\n’) ), then os.flush().
2 Returns: os

[ Voor 36% gewijzigd door .oisyn op 24-09-2009 22:30 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.

Pagina: 1