Ir ao conteúdo

Posts recomendados

Postado

"Faça um algoritmo que leia um número de matrícula de uma sociedade e informe a data de pagamento da mensalidade de acordo com as opções de pagamento a seguir. O número de matrícula é um número inteiro e por isso deve ser armazenado em uma variável do tipo int. Final da matrícula 0, 1 ou 2 – pagamento até 10/março
–Final da matrícula 3, 4 ou 5 – pagamento até 10/junho
–Final da matrícula 6 ou 7 – pagamento até 10/agosto
–Outro final de matrícula – pagamento até 10/novembro"

esse é o problema, mas não sei como faço pra ler somente o último numero da matricula

 

#include <stdio.h>

 

int main(void) {

int mat;

int sobra;

 

printf("Informe sua matrícula \n");

scanf("%d", &mat);

if (mat >= 0 && mat <= 2) {

printf("pagamento até 10/março \n");

}

if (mat >= 3 && mat <=5){

printf("pagamento até 10/junho \n");

}

if (mat == 6 && mat == 7){

printf("pagamento até 10/agosto \n");

}

if (mat >= 8){

printf("pagamento até 10/novembro \n");

}

 

return 0;

}

foi esse cod que fiz até agora

  • Obrigado 1
Postado

@andrieli.m31    você pode usar o comando modulo do número , que na Linguagem   c  é esse aqui  "%" ,  e extrair o último Digito do número   ,  e tente postar seu código com esse formato aqui de baixo  , para facilitar a outros  copiar e testar seu código :

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void) 
{
	int mat;
	int sobra;
	printf("Informe sua matrícula \n");
	scanf("%d", &mat);
	int uLtimo_Digito = mat % 10;

	if (uLtimo_Digito >= 0 && uLtimo_Digito <= 2) 
	{
		printf("pagamento at%c 10/março \n",130);
	}
	if (uLtimo_Digito >= 3 && uLtimo_Digito <= 5)
	{
		printf("pagamento at%c 10/junho \n",130);
	}
	if (uLtimo_Digito == 6 && uLtimo_Digito == 7)
	{
		printf("pagamento at%c 10/agosto \n",130);
	}
	if (uLtimo_Digito >= 8)
	{
		printf("pagamento at%c 10/novembro \n",130);
	}
	return 0;
}

 

  • Curtir 3
Postado
4 horas atrás, andrieli.m31 disse:

esse é o problema, mas não sei como faço pra ler somente o último numero da matricula

 

Não pode.

 

Mas veja o enunciado...

 

4 horas atrás, andrieli.m31 disse:

O número de matrícula é um número inteiro e por isso deve ser armazenado em uma variável do tipo int

 

Está claro que deve ler o número todo...

 

O último número, como no ensino fundamental, é o dígito das unidades. Se você calcular o resto da divisão por 10 vai ter o que? o digito das unidades. Se dividir por 100 vai ter o das centenas e assim por diante. Nada a ver com C, apenas aritmética do ensino fundamental.

 

Como dito acima C e outras linguagens tem o operador módulo que retorna esse valor.

 

123 % 100 é  23. 

 

Mas como em C a divisão trunca o resultado

  • 123 / 100 vale 1. 
  • 1 * 100 vale 100
  • 123 - 100 vale 23 
  • e é o mesmo resultado

123 % 10 é 3

  • 123 / 10 vale 12
  • 12 * 10 vale 120
  • 123 - 120 vale 3

🤔

 

  • Curtir 1
  • Obrigado 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...