alguém da uma luz aqui, tenho que fazer este programa no dev c++
Escreva um programa que solicite a entrada do número
inteiro positivo N e que imprima na tela todos os valores
que estão entre –N e +N, inclusive o número zero.
Soluções para a tarefa
Resposta: Não sei como ficaria em C++, pois nunca programei nesta linguagem. Mas em java ficaria assim:
import java.util.Scanner;
public class ex {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); //usado no java para o entrada de dados (usuàrio poder digitar)
System.out.print("Digite um número: ");
int numero = sc.nextInt(); //variavel que recebe o valor que o usuário digitou
int negativoDoNumero = (numero*-1)+1; /*deixa o número negativo primeiro. O +1 serve para não repetir o número que o usuario digitou negativo
. Ex.: o user digitou 3, para não sair o -3 no console, e sair apenas -2 -1 0 1 2
*/
for (int i = negativoDoNumero; i < numero; i++) {
System.out.println(i);
}
}
}
Explicação: Você solicita ao usuário um valor positivo, depois cria uma variável que deixa este número negativo. Aí você cria um laço for, onde ele verifica se o número da variável é igual a o valor que o usuário digitou, caso não for, ele soma com um até chegar ao valor que o usuário digitou (no caso um número antes, já que a questão quer os valores que estão entre).
Obs: Anexei uma imagem para facilitar a visualização. No código usei +1 para não imprimir o mesmo numero (em sua forma negativa) digitado pelo usuário. No for coloquei < (menor que) sem de igualdade, para não imprimir o valor em sí, mas apenas os valores que estão entre.
Espero ter ajudado, tente entender a lógica e traduza pra c++.
Bons estudos, abraços. :)