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

Resultado do Desafio

Olá! O meu código de resolução do desafio ficou assim:

#include <stdio.h>

int main(){
    int x, y;

    printf("Digite um valor x: \n");
    scanf("%d", &x);
    printf("Digite um valor y: \n");
    scanf("%d", &y);
    printf("A multiplicação desses valores é igual a %d", x*y);

    return 0;
}

A única coisa que gostaria de saber é se tem alguma diferença prática ou alguma perda/ganho em uso de memória por não criar uma nova variável para o produto. Preferi apenas executar a operação dentro da máscara na string final e deu certo. Tem algum problema nisso? Qual a diferença?

Obrigado desde já!

2 respostas
solução!

Oioi Pedro, tudo bem?

Temos dois lados: existe sim um ganho de memória por não ter criado uma nova variável, e se estamos tratando desse caso, é um ganho mínimo. Porém, se tivéssemos essa operação sendo feitas várias vezes, seria algo significativo.

Por outro lado, é uma boa prática criar uma variável e nomeá-la de acordo com a operação, ao invés de apenas operar, pois o código fica bem mais legível dessa forma. Também se estivermos tratando apenas do caso do seu código, é tranquilo deixar a operação da multiplicação sem ser nomeada, pois é reconhecida na maior parte das vezes. Entretanto, podemos ter operações mais complexas que precisam ser mais explícitas para ter um código mais legível.

Cabe a você ponderar qual lado é mais importante de acordo com o programa e a situação que está trabalhando.

Espero ter ajudado! Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Obrigado pela ajuda, Iasmin! E desculpa a demora pra responder, hahah! Valeu <3