• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

turkis

[resolvido]ajuda numa porcaria supostamente simples

8 mensagens neste tópico

é páh....só me apetece nem sei o que....

isto é só para calcular o volume e a area de um cilindro... :-[

#include <iostream>
using namespace std;

#define PI 3.14159;

int main()
{
double area, volume ;
int altura, raio;

cout<<"Qual e o raio da base?(mm)";cin>>raio;
cout<<"Qual a altura da circunfrencia?";cin>>altura;

area = (2*raio*raio*PI)+(altura*2*PI*raio);
volume = raio*raio*PI*altura;

cout<<"A area do cilindro com "<<raio<<"mm de raio e aprox "<<area<<"mm quadrados"<<'\n';
cout<<"O volume do cilindro e aproximadamente "<<volume<<"mm cubicos"<<'\n';

return 0;
}

e dá esta carrada de erros...

------ Build started: Project: exercicios 1-3, Configuration: Debug Win32 ------

Compiling...

1.cpp

c:\users\marcos valter\documents\escola\disciplinas\bases programação\programas\exercicios 1-3\exercicios 1-3\1.cpp(14) : error C2143: syntax error : missing ')' before ';'

c:\users\marcos valter\documents\escola\disciplinas\bases programação\programas\exercicios 1-3\exercicios 1-3\1.cpp(14) : error C2059: syntax error : ')'

c:\users\marcos valter\documents\escola\disciplinas\bases programação\programas\exercicios 1-3\exercicios 1-3\1.cpp(14) : error C2143: syntax error : missing ')' before ';'

c:\users\marcos valter\documents\escola\disciplinas\bases programação\programas\exercicios 1-3\exercicios 1-3\1.cpp(14) : warning C4552: '+' : operator has no effect; expected operator with side-effect

c:\users\marcos valter\documents\escola\disciplinas\bases programação\programas\exercicios 1-3\exercicios 1-3\1.cpp(14) : error C2059: syntax error : ')'

c:\users\marcos valter\documents\escola\disciplinas\bases programação\programas\exercicios 1-3\exercicios 1-3\1.cpp(14) : error C2100: illegal indirection

c:\users\marcos valter\documents\escola\disciplinas\bases programação\programas\exercicios 1-3\exercicios 1-3\1.cpp(15) : error C2100: illegal indirection

Build log was saved at "file://c:\Users\Marcos Valter\Documents\escola\Disciplinas\Bases Programação\programas\exercicios 1-3\exercicios 1-3\Debug\BuildLog.htm"

exercicios 1-3 - 6 error(s), 1 warning(s)

========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

erros de parenteses não tenho...e o que é isso de "illegal indirection"? :hmm:

eu acho que está bem pensado....mas não tou a ver qual o erro....tou farto de  :wallbash: ... gostava de estregar isto em termos....

NOTA:

sei que posso usar o pow(x,y), importando o <cmath>, mas o prof não deixa...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
#define PI 3.14159;

Sempre que o código contenha PI ele vai substituir pela macro completa ponto e vírgula e tudo

area = (2*raio*raio*PI)+(altura*2*PI*raio);

area = (2*raio*raio*3.14159;)+(altura*2*3.14159;*raio);

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

não sabia....e nem o meu prof deu pelo rato...

efectivamente, se ele tb lê o  ";", é lógico que ficava tudo errado

thanx  :D

PS:

o editor do fórum dá-me stresses...não consigo ver o texto que escrevo de vez em quando =S, por isso é que modifico tantas vezes o post

tou a usar o IE 8 beta

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Agora que já sabes a razão do teu programa não funcionar, não queres pensar em substituir a macro por uma constante?

/* ... */
const double PI = 3.14159;
/* ... */
        area = (2 * raio * raio * PI) + (altura * 2 * PI * raio);
/* ... */

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não posso...tenho que usar o DEFINE...é obrigatório =)

obrigado na mesma =D

Agora que já sabes a razão do teu programa não funcionar, não queres pensar em substituir a macro por uma constante?

/* ... */
const double PI = 3.14159;
/* ... */
        area = (2 * raio * raio * PI) + (altura * 2 * PI * raio);
/* ... */

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não posso...tenho que usar o DEFINE...é obrigatório =)

Que raio de professor é que tu arranjaste que manda usar #define (quando const só traz vantagens)

e nem consegue detectar um ponto e vírgula a mais?? :D B)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

é páh...até é um bom prof....e ele tem que se reger pelo o que o estado dita...heheheh

imagina estares a dar aulas desde as 8:30 até às 22:00 e ainda teres uma rede de uma escola para gerir? não deve ser fácil..lol deve chegar à noite e ter a cabeça em água...

tb não era suposto dar ponteiros e classes em C++ no secundário, e vou ter que dar...é o que está no programa =)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora