Linguagem C
Descrição Dado um número inteiro de 3 algarismo construir outro número de quatro algarismos de acordo com a seguinte regra:
A) os três primeiros algarismos, contados da esquerda pra direita são iguais aos do numero dado;
B) o quarto algarismo é um dígito de controle calculado da seguinte forma: primeiro algarismo + segundo algarismo x 3 + terceiro algarismo x 5; o digito de controle é igual ao resto da divisão dessa soma por 7.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <stdio.h>
#include <stdlib.h>

int main (void)
{
    int digito_de_controle, numero_de_3_algarismo, numero_de_quatro_algarismos, primeiro_algarismo, segundo_algarismo;
    int terceiro_algarismo;
    printf ("Digite o valor do numero de 3 algarismo: ");
    scanf ("%d", &numero_de_3_algarismo);
    (void) getchar ();
    primeiro_algarismo=(numero_de_3_algarismo%1000-numero_de_3_algarismo%100)/100;
    segundo_algarismo=(numero_de_3_algarismo%100-numero_de_3_algarismo%10)/10;
    terceiro_algarismo=numero_de_3_algarismo%10;
    digito_de_controle=(primeiro_algarismo+segundo_algarismo*3+terceiro_algarismo*5)%7;
    numero_de_quatro_algarismos=primeiro_algarismo*1000+segundo_algarismo*100+terceiro_algarismo*10+digito_de_controle;
    printf ("O valor do digito de controle: %d\n", digito_de_controle);
    printf ("O valor do numero de quatro algarismos: %d\n", numero_de_quatro_algarismos);
    printf ("O valor do primeiro algarismo: %d\n", primeiro_algarismo);
    printf ("O valor do segundo algarismo: %d\n", segundo_algarismo);
    printf ("O valor do terceiro algarismo: %d\n", terceiro_algarismo);
    putchar ('\n');
    system ("pause");
    return EXIT_SUCCESS;
}