PDA

View Full Version : |c++| Perchè non va?


VBProgramming
02-12-2007, 08:24
Ho un problema con questo codice
//Calcolo dell'area di un triangolo

#include <cstdio>
#include <iostream>

using namespace std;

int main()
{
int a = 0; int b = 0;

printf("Base: ");
scanf("%d",a);

printf("Altezza: ");
scanf("%d%", b);

cout << a << " per " << b << " fa " << int (a*b) << endl;

getchar();

return 0;
}

Non mi da errori di compilazione, ma quando lo eseguo e digito il primo numero, crasha. Come ma?

okay
02-12-2007, 08:32
ok

Energy++
02-12-2007, 08:35
Ho un problema con questo codice
//Calcolo dell'area di un triangolo

#include <cstdio>
#include <iostream>

using namespace std;

int main()
{
int a = 0; int b = 0;

printf("Base: ");
scanf("%d",&a);

printf("Altezza: ");
scanf("%d", &b);

cout << a << " per " << b << " fa " << int (a*b) << endl;

getchar();

return 0;
}

Non mi da errori di compilazione, ma quando lo eseguo e digito il primo numero, crasha. Come ma?


nello scanf devi passare l'indirizzo della variabile mettendo un & prima del nome della variabile.

PS. ma perche prima utilizzi il printf e poi il cout? :confused:
PS. l'area del triangolo poi è (base*altezza)/2 :p

-Slash
02-12-2007, 09:43
ma perchè includi stdio in un programma c++????

mi sa che hai un po' di confusione in testa :mbe:

cout << "Base: " << endl;
cin >> a;
cout << "Altezza: " << endl;
cin >> b;

cout << (a*b);

senza int (a*b) :confused:

e poi dichiara a e b come double, non come interi

wizard1993
02-12-2007, 10:21
scusate, ma l'area del triangolo non è (base*altezza)/2

VBProgramming
02-12-2007, 11:07
Grazie, ma avevo risolto ancor prima di vedere le vostre risposte
#include <iostream.h>

using namespace std;

int main()
{
float a = 0.0, b = 0.0;

cout << "Base: ";
cin >> a;

cout << "Altezza: ";
cin >> b;

cout << "L'area del triangolo con base " << a << " e altezza " << b << " e' di " << a*b/2 << endl;

system("Pause");

return 0;
}

-Slash
02-12-2007, 19:20
Grazie, ma avevo risolto ancor prima di vedere le vostre risposte
#include <iostream.h>

using namespace std;

int main()
{
float a = 0.0, b = 0.0;

cout << "Base: ";
cin >> a;

cout << "Altezza: ";
cin >> b;

cout << "L'area del triangolo con base " << a << " e altezza " << b << " e' di " << a*b/2 << endl;

system("Pause");

return 0;
}

#include <iostream> non iostream.h

shell32
03-12-2007, 17:51
Grazie, ma avevo risolto ancor prima di vedere le vostre risposte



Tu sì che sei un genio. Non hai bisogno di aiuti.
Scusate ma 'sta gente che riceve consigli e aiuti e poi fa pure finta che non
gli sono serviti... Lascia stare il C++, dammi retta.