Conteúdo do Curso
Fundamentos de C
Fundamentos de C
Multiplicação, Divisão e Módulo
Operador de Multiplicação
O operador de multiplicação *
produz o produto de seus operandos. Por exemplo, se você está tentando determinar a quantidade de água necessária para encher uma piscina:
Main
#include <stdio.h> int main() { int height = 2; // in meters int width = 7; // in meters int length = 10; // in meters // A cubic meter contains one thousand liters int liters = (height * width * length) * 1000; printf("Size of pool: %d liters", liters); return 0; }
Operador de Divisão
O operador de divisão /
divide o operando à esquerda pelo da direita.
Suponha que você queira calcular a velocidade de um carro:
Main
#include <stdio.h> int main() { int s = 200; // in meters double t = 3; // three hours double v = s / t; printf("Velocity = %f m/h", v); return 0; }
Usar variáveis do tipo double
garante que nosso resultado possa ser um valor decimal, proporcionando uma resposta mais precisa. Se trabalhássemos apenas com tipos inteiros, o resultado também seria um inteiro:
Main
#include <stdio.h> int main() { int s = 200; // in meters int t = 3; // three hours // without `double v` variable printf("Velocity = %d m/h", s/t); return 0; }
É importante notar que apenas mudar o especificador de formato não corrigirá uma divisão inteira incorreta:
Main
#include <stdio.h> int main() { int s = 200; // in meters int t = 3; // three hours printf("Velocity = %f m/h", s/t); // changed specifier return 0; }
No entanto, há uma maneira de obter uma divisão correta sem introduzir outra variável:
Main
#include <stdio.h> int main() { int s = 200; // in meters double t = 3; // three hours printf("Velocity = %f m/h", s/t); // changed specificator return 0; }
Nota
Para que uma divisão resulte em um valor decimal, pelo menos um dos operandos deve ser de um tipo decimal, como
double
.
Operador Módulo
O operador %
retorna o resto de uma divisão. Por exemplo:
Main
#include <stdio.h> int main() { printf("Modulo 8 %% 5 = %d\n", 8 % 5); printf("Modulo 10 %% 3 = %d\n", 10 % 3); printf("Modulo 7 %% 5 = %d\n", 7 % 5); printf("Modulo 20 %% 5 = %d\n", 20 % 5); return 0; }
Nota
Se você está tentando exibir o caractere
%
em uma string (por exemplo, em uma instruçãoprintf
), você deve usar%%
para representar um único%
. Isso informa ao compilador que você deseja imprimir o caractere%
e não usá-lo como um especificador de formato.
Obrigado pelo seu feedback!