Escreva um programa que receba apenas números positivos. Enquanto o usuário
digitar números positivos o programa funcionará. O programa encerra caso um
número negativo seja digitado. em C
cledersonbc:
O enunciado pede apenas para armazenar números positivos e o programa encerra se for lido um número negativo.
Soluções para a tarefa
Respondido por
2
Teoria
Antes de escrever um programa é preciso criar um algoritmo. Perceba que há um laço de repetição aí, porque existe uma condição para o programa continuar solicitando números mas o mesmo aparentemente não irá tratá-los.
Precisaremos apenas de uma única variável do tipo real, que será para leitura. Perceba que existem números positivos tanto inteiros como fracionários, por isso uma variável do tipo real. +1,555 é real por exemplo.
Algoritmo
algoritmo "lepositivos"
var
n: real
inicio
n ←1.0 //a variável n deve ser inicializada com um valor não-negativo.
enquanto (n >= 0) faca
escreva("Informe um valor positivo: ")
leia(m)
fimenquanto
fimalgoritmo
Realize o Teste de Mesa no algoritmo com a Massa de Dados desejada. Se estiver tudo ok, então codifique o mesmo na linguagem C.
Código em C
#include <stdio.h>
#include <stdlib.h> //Se você usa Windows, deixe essa biblioteca
int main() {
float n = 1.0; //Variável do tipo real de precisão simples
while (n >= 0) {
printf("\nInforme um valor positivo: ");
scanf("%f", &n);
}
return 0;
}
Está aí.
Antes de escrever um programa é preciso criar um algoritmo. Perceba que há um laço de repetição aí, porque existe uma condição para o programa continuar solicitando números mas o mesmo aparentemente não irá tratá-los.
Precisaremos apenas de uma única variável do tipo real, que será para leitura. Perceba que existem números positivos tanto inteiros como fracionários, por isso uma variável do tipo real. +1,555 é real por exemplo.
Algoritmo
algoritmo "lepositivos"
var
n: real
inicio
n ←1.0 //a variável n deve ser inicializada com um valor não-negativo.
enquanto (n >= 0) faca
escreva("Informe um valor positivo: ")
leia(m)
fimenquanto
fimalgoritmo
Realize o Teste de Mesa no algoritmo com a Massa de Dados desejada. Se estiver tudo ok, então codifique o mesmo na linguagem C.
Código em C
#include <stdio.h>
#include <stdlib.h> //Se você usa Windows, deixe essa biblioteca
int main() {
float n = 1.0; //Variável do tipo real de precisão simples
while (n >= 0) {
printf("\nInforme um valor positivo: ");
scanf("%f", &n);
}
return 0;
}
Está aí.
Perguntas interessantes