Aula 10 – Algoritmo em C

Aula 10 do curso básico de algoritmo em C

algoritmo em C

Código 05 – Requisitos

Esse programa é para calcular e exibir a média ponderada de um aluno. Inicialmente o programa lerá o peso da primeira prova e o peso da segunda prova, depois lerá os seguintes dados dos alunos: matrícula, nota da primeira prova e nota da segunda prova.
Esse programa terá uma função que receberá duas notas (real) e seus respectivos pesos (inteiro) como parâmetros.
Essa função deve devolver a média ponderada dos valores. Exemplo:
Notas: 7.0 e 5.0
Pesos: 2 e 3
Média = (7×2 + 5×3) / 5
Obs: 5 é a soma dos pesos, nesse caso, 2 + 3, por isso o 5 no divisor.

Obs: Nesse código, vamos explorar as mensagens no console, usando acentuação, cedilha etc. Para isso é necessário usar os números correspondentes ao caractere que se deseja usar: Ç, ç, É, é, Ê, ê, Í, í etc.
Exemplo de uso nesse código:
printf (“Digite o n\243mero da matr\641cula:\n”);
Ou
printf (“Digite o n%cmero da matr%ccula:\n”, 163, 177);
//Ambos imprimem na tela a mesma coisa

Para usar o %c usamos os número referente ao caractere desejado na tabela ASCII

Veja a diferença dos números, o uso de um ou de outro depende da opção de uso no printf ( )

\243 != 163 ambos para o ( ‘ú ‘ )

\641 != 177 ambos para o ( ‘í ‘ )

Tabela com alguns caracteres típicos de alguns idiomas e seus respectivos valores em octal

Obs: Para usar na string entre as aspas do printf() com o contra barra antes do número

Á = \665 É = \220 Í = \726 Ó = \740 Ú = \751
á = \240 é = \202 í = \641 ó = \242 ú = \243
À = \667 È = \724 Ì = \736 Ò = \743 Ù = \753
à = \205 è = \212 ì = \736 ò = \225 ù = \227
 = \666 Ê = \722 Î = \214 Ô = \742 Û = \752
â = \203 ê = \210 î = \727 ô = \223 û = \226
à = \707 Õ = \745
ã = \706 õ = \744
Ç = \200 ç = \207

Alguns dos caracteres da tabela ASCII para usar com o %c no printf ( )

Á = 181 É = 144 Í = 214 Ó = 224 Ú = 233
á = 160 é = 130 í = 161 ó = 162 ú = 163
À = 183 È = 212 Ì = 222 Ò = 227 Ù = 235
à = 133 è = 138 ì = 141 ò = 149 ù = 151
 = 182 Ê = 212 Î = 215 Ô = 226 Û = 234
â = 131 ê = 136 î = 140 ô = 147 û = 150
à = 199 Õ = 229
ã = 198 õ = 228
Ç = 128 ç = 135

Código 05

#include <stdio.h> /* Instrução de pré-processamento, habilita nosso programa a usar essa biblioteca
 de entradas e saídas, possui funções como scanf e printf*/
#include <stdlib.h> /*Instrução de pré-processamento, habilita nosso programa a usar essa biblioteca,
 para poder usar o system("PAUSE"); */
//Função que recebe duas notas, dois pesos, calcula a média ponderada e devolve o valor
//calculado
float mediaP (float nota1, float nota2, int peso1, int peso2)
{
 	float mediaPnd; //Variável que armazenará o cálculo

 	mediaPnd = (nota1*peso1+nota2*peso2)/(peso1 + peso2); //Onde ocorre o cálculo

 	return (mediaPnd); //retorna o valor calculado
}


//Função main ( ), por onde o programa inicia a execução
int main (void)
{
 	int rpeso1, rpeso2, matricula; //Declaração das variáveis inteiras

 	float rnota1, rnota2, rmedia; //Declaração das variáveis decimais

 	printf ("Digite o peso da primeira nota:\n"); //Exibe a mensagem para o usuário ...
 	scanf ("%d", &rpeso1); //Armazena o valor digitado no endereço de rpeso1

 	printf ("Digite o peso da segunda nota:\n"); //Exibe a mensagem para o usuário ...
 	scanf ("%d", &rpeso2); //Armazena o valor digitado no endereço de rpeso2

 	printf ("Digite o n\243mero da matr\641cula:\n"); //Exibe a mensagem para o usuário ...
 	scanf ("%d", &matricula); //Armazena o valor digitado no endereço de matricula

 	printf ("Digite a nota da primeira prova:\n"); //Exibe a mensagem para o usuário ...
 	scanf ("%f", &rnota1); //Armazena o valor digitado no endereço de rnota1

 	printf ("Digite a nota da segunda prova:\n"); //Exibe a mensagem para o usuário ...
 	scanf ("%f", &rnota2); //Armazena o valor digitado no endereço de rnota2

 	rmedia = mediaP (rpeso1, rpeso2, rnota1, rnota2); //chama a função mediap, passando os valores e rmedia recebe o resultado do cálculo

 	printf ("A m\202dia ponderada do aluno de matr\641cula %d \202:\n %.2f", matricula, rmedia); //Exibe a mensagem com a resposta para o usuário.

 	system("PAUSE");
 	return 0; // Finaliza o programa.
}

Link encurtado para download dos códigos

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *