Contas

ou não...

Código:
 printf("z= ");
  if(x[COLOR=Red]==[/COLOR]y)printf("x e igual a y");

em C, para ver se duas variaveis são iguais, usa-se dois sinais de igual, em vez de um

e ai falta também a função para ler a variavel do utilizador
 
Código:
 printf("x=20 \n",x);getchar ();
    printf("y=10 \n",y);getchar ();
    printf("z=x+y \n",z);getchar ();
    printf("z= \n",z);getchar ();
    scanf("%d \n",&valor);getchar ();
    if(valor=30) print("%d muito bem, ganhou =D \n");

Não pode ser assim?
 
Variavel

Boas pessoal. E o seguinte, eu quero fazer uma especie de conta, mto simples mesmo...


Código:
 Int x=20, y=10 , z = x+y; 

printf("x=20 \n",x);getchar ();
    printf("y=10 \n",y);getchar ();
    printf("z=x+y \n",z);getchar ();
    printf("z= \n",z);getchar ();
    scanf("%d \n",&valor);getchar ();
    if(valor=30) print("%d muito bem, ganhou =D \n");

So que quero que o z, quando apareca, se eu meter o valor correcto( 30 ), ele me diga : muito bem ganhou, mas quero ser eu a meter o valor.


Quando meto o codigo dame erro

Alguem me pode dizer o que meti mal no comado?
 
Boas pessoal. E o seguinte, eu quero fazer uma especie de conta, mto simples mesmo...


Código:
 Int x=20, y=10 , z = x+y; 

printf("x=20 \n",x);getchar ();
    printf("y=10 \n",y);getchar ();
    printf("z=x+y \n",z);getchar ();
    printf("z= \n",z);getchar ();
    scanf("%d \n",&valor);getchar ();
    if(valor=30) print("%d muito bem, ganhou =D \n");
So que quero que o z, quando apareca, se eu meter o valor correcto( 30 ), ele me diga : muito bem ganhou, mas quero ser eu a meter o valor.


Quando meto o codigo dame erro

Alguem me pode dizer o que meti mal no comado?
Não declaraste a variável "valor".

(E começa a ler os erros que o compilador dá. Geralmente percebes qual é o problema.)
 
Obrigado mais uma vez pela paciencia.

Declarei o valor, mas, se meto assim:

Código:
  scanf("%d",&valor);getchar ();
    if(valor=30)printf("[B]%d [/B]Muito bem ganhou!!\n"[B],valor[/B]);
acontece isto:




se meto assim:
Código:
   scanf("%d",&valor);getchar ();
    if(valor=30)printf("Muito bem ganhou!!\n"[B],valor[/B]);
Posso meter por exp 40 que ele diz que ganhei.

se meto com 2 '==' posso meter qualquer valor que nunca aparece se ganhei ou nao
Código:
    scanf("%d",&valor);getchar ();
    if(valor[B]==[/B]30)printf("Muito bem ganhou!!\n"[B],valor[/B]);

Alguem me da o codigo correcto pa meter bem?
 
Código:
  scanf("%d",&valor);getchar ();
    if(valor[COLOR=Red]==[/COLOR]30)printf("[B]%d [/B]Muito bem ganhou!!\n"[B],valor[/B]);

Quando queres comparar 2 valores tens de colocar dois sinais de igual (==). Em C as comparações são com 2 sinais de igual. Se colocares apenas 1 sinal, isso é uma atribuição, ou seja, caso tenhas valor=30, o que ele faz é colocar o valor 30 na variável valor.
 
posso perguntar para que são todos esses getchar() no fim de cada instrução? só obrigam o utilizador a carregar numa tecla para o programa avançar

e se puseres isto vai dar certo:

Código:
scanf("%d",&valor);
if(valor[B]==[/B]30)printf("Escreveu %d Muito bem ganhou!!\n, valor)";

isto é igual ao teu, só tirei o getchar

outra coisa:
Código:
 Int x=20, y=10 , z = x+y;
isto é um pedaço de código teu de uns posts atrás. int tem que ser com minusculas, vai-te habituando que em C as minusculas são diferenciadas das maiusculas
int é diferente de Int que é diferente de INT e por ai fora
 
Podes me explicar ao certo o que pretendes?

Queres fazer a soma de x+y em que x=20 e y=10, mas antes do programa dar o resultado queres tentar acertar a resposta.

É isso?

Código:
 #include<stdio.h>

int main (){
    int x, y, z, valor;
    x=20;
    y=10;
    printf("O valor de Z e:\n");
    scanf("%d",&valor);
    z=x+y;
    if(valor==z)
        printf("Muito bem, ganhou.\n");
    else
        printf("Nao acertou.\n\nO valor correcto de z e: %d\n", z);
}

Este é um exemplo de um código correcto para o problema que eu percebi que tinhas.
 
Back
Topo