Informática, perguntado por lucasferreira366, 10 meses atrás

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

Respondido por RubenFilipe
1

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. :)

Anexos:
Perguntas interessantes