Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Projeto] Solução para o Desafio de multiplicação de X e Y em C

Este é meu código, porém quando coloco ç e acentuação a ilustração no cmd fica bagunçada... para a leitura ser possível não coloquei acentuação e ç.

#include <stdio.h>

//Desafio de multiplição x.y
int main() {

int x;
int y;

    printf ("Vamos multiplicar dois numeros?\n");
    printf ("Digite um valor:\n");
    scanf  ("%d", &x);
    printf ("Digite outro valor:\n");
    scanf  ("%d", &y);

    int resultado = x * y; 

    printf ("O resultado da multiplicação é %d!\n", resultado);
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas
solução!

Olá, Marco!

Percebi que você está tendo problemas com caracteres especiais, como ç e acentos, no seu código em C. Isso acontece porque o cmd (prompt de comando) do Windows não lida muito bem com esses caracteres por padrão.

Uma solução para isso é definir o código de página do cmd para UTF-8, que suporta esses caracteres. Você pode fazer isso adicionando o seguinte comando no início do seu código:

system("chcp 65001 > nul");

O comando chcp 65001 muda o código de página do cmd para UTF-8, e > nul evita que o cmd imprima o código de página atual.

Portanto, seu código ficaria assim:

#include <stdio.h>
#include <stdlib.h> // Biblioteca necessária para usar o comando system

//Desafio de multiplição x.y
int main() {

    system("chcp 65001 > nul"); // Define o código de página do cmd para UTF-8

    int x;
    int y;

    printf ("Vamos multiplicar dois números?\n");
    printf ("Digite um valor:\n");
    scanf  ("%d", &x);
    printf ("Digite outro valor:\n");
    scanf  ("%d", &y);

    int resultado = x * y; 

    printf ("O resultado da multiplicação é %d!\n", resultado);
}

Lembre-se que essa solução pode não funcionar em todos os sistemas operacionais e ambientes, mas deve resolver seu problema no cmd do Windows.

Espero ter ajudado e bons estudos!

Valeu Matheus Brandino! Salvou! Muito Obrigado!