ALLAN BACHEGA Postado Março 20, 2011 Denunciar Share Postado Março 20, 2011 /*Escreva um programa em C que leia números inteiros do teclado. A leitura de valores deve parar assim que o usuário digitar 3 números em seqüência (por ex. 3, 4, 5). O exercicio deve ser feito em for ou while */Estou tentando fazer esse exercicio mas estou com muitas duvidas, alguém pode ajudar a fazer o algoritmo plz! :mellow: Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ALLAN BACHEGA Postado Março 20, 2011 Autor Denunciar Share Postado Março 20, 2011 (editado) TENTEI FAZER DESSE MODO, MAS DAI PRA FRENTE NÃO CONSEGUI CONTINUAR ;/#include <stdlib.h> #include <stdio.h> #include <conio.h> main() { int num, cont=10; int a, b, c; while(num<10) //enquanto do //faça { printf("Digite um numero sequencial: "); scanf("%d", &num); a=3; b=4; c=5; if(num=a)||(num=B)||(num=c); } printf("O numero e sequencia invalida"); Editado Março 20, 2011 por kuroi Adicionar tag CODE Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 CPP Postado Março 20, 2011 Denunciar Share Postado Março 20, 2011 Olá Allan,Seu programa nem sequer compila porque não existe while do e sim do while.O conceito de sequencia desejada para termino do seu programa não se restringe a 3,4 e 5, mas qualquer sequencia, tipo 100, 101, 102 ou 77,78,79 e etc.Se estive correto o laço while(num<10) iria terminar o processo independente de ter sido digitado uma sequencia progressiva ou não, e não era isso que o enunciado pedia.Bons estudos, mas se realmente interessar, foca um pouco mais no estudo de logica.Abs#include <stdio.h> void main(void) { int num1, num2, num3; int faca = 1; while (faca == 1) { printf("Digite o primeiro numero: "); scanf("%d", &num1); printf("Digite o segundo numero: "); scanf("%d", &num2); printf("Digite o terceiro numero: "); scanf("%d", &num3); printf("Digitados: %d %d %d\n", num1, num2, num3); if ((num2 - num1) == 1 && (num3 - num2) == 1) faca = 0; } printf("Sequencia de termino digitada\n"); } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ALLAN BACHEGA Postado Março 20, 2011 Autor Denunciar Share Postado Março 20, 2011 (editado) CPP no algoritmo que você fez, quando eu digito o 3 o programa fecha, ta normal.... mas quando coloco o 5 ou o 7 entre os tres digitos ele não fecha, oque pode ser? por exemplo...digite o primeiro numero: 1digite o segundo numero: 2digite o terceiro numero: 5 (digitei 5 e o programa tem q dar a mensagem de erro e encerrar o programa)2º exemplo...digite o primeiro numero: 1digite o segundo numero: 4 (digitei 4 e o programa tem q dar a mensagem de erro e encerrar o programa)digite o terceiro numero: 8 Eu preciso que o programa de uma mensagem que o numero não é valido e feche o programa ao digitar um desses tres numeros!!! Obrigado Editado Março 20, 2011 por ALLAN BACHEGA Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 CPP Postado Março 20, 2011 Denunciar Share Postado Março 20, 2011 Olá Allan.O enunciado do exercicio não condiz com o que você disse."A leitura de valores deve parar assim que o usuário digitar 3 números em seqüência (por ex. 3, 4, 5)"Ou seja, se você digitar 3 numeros em sequencia com diferenca de 1 entre eles o programa deve terminar.Como eu havia dito antes, qualquer sequencia nessa condição, por exemplo:Sequencias que terminal o programa:1,2,35,6,710, 11,1289, 90,91Etc.você tem que digitar um numero e pressionar <ENTER> pra que seja pedido o proximo.Se você digitar todos os numeros de uma vez e pressionar <ENTER> vai dar erro mesmo.Tenta ai mais uma vez. Qualquer coisa to a disposição.Abs Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ALLAN BACHEGA Postado Março 20, 2011 Autor Denunciar Share Postado Março 20, 2011 Ahh sim CPP entendi, mas só uma coisa... porque quando digito:123Aparece a mensagem "Sequencia de termino digitada" e o programa fecha...E se digito 102030O programa não fecha??? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 CPP Postado Março 21, 2011 Denunciar Share Postado Março 21, 2011 A sequencia de termino sempre tem a diferenca de 1 entre os numeros.Como em 1,2 e 3já 10, 20 e 30 a diferenca entre os numeros digitados é de 10 e por isso o programa não termina.Se você digitar 10,11 e 12 ele termina.Abs Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ALLAN BACHEGA Postado Março 21, 2011 Autor Denunciar Share Postado Março 21, 2011 Ahhh entendi, muito obrigado pela ajuda ;) Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
ALLAN BACHEGA
/*Escreva um programa em C que leia números inteiros do teclado.
A leitura de valores deve parar assim que o usuário digitar 3 números em seqüência (por ex. 3, 4, 5). O exercicio deve ser feito em for ou while */
Estou tentando fazer esse exercicio mas estou com muitas duvidas, alguém pode ajudar a fazer o algoritmo plz! :mellow:
Link para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.