Mudanças entre as edições de "AULA 15 - Programação 1 - Graduação"
Ir para navegação
Ir para pesquisar
Linha 130: | Linha 130: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | ==Avaliação: Turma 2== | ||
+ | |||
+ | Implementar as funções indicadas abaixo: | ||
+ | |||
+ | <syntaxhighlight lang=c> | ||
+ | #include <stdio.h> | ||
+ | |||
+ | struct tipo_local{ | ||
+ | char rua[30]; | ||
+ | int numero; | ||
+ | char cidade[30]; | ||
+ | char estado[3]; | ||
+ | }; | ||
+ | |||
+ | struct tipo_jogo { | ||
+ | int ganhadores_sena; | ||
+ | int ganhadores_quina; | ||
+ | float premio_sena; | ||
+ | float premio_quina; | ||
+ | struct tipo_local local; | ||
+ | int resultado[6]; | ||
+ | } Jogos[5] = | ||
+ | { | ||
+ | { 1, 5, 1200000, 500000, {"Rua Pedro da Silva", 30, "Florianopolis", "SC"}, {1,2,3,4,5,6}}, | ||
+ | { 4, 10, 1500000, 100000, {"Rua Joao da Silva", 30, "Cruz Alta", "RS"},{10,20,33,44,54,6}}, | ||
+ | { 3, 20, 2000000, 300000, {"Rua Maria da Silva", 30, "Curitiba", "PR"}, {1,2,3,4,5,43}}, | ||
+ | { 2, 50, 1300000, 600000, {"Rua Jose da Silva", 30, "Tijucas", "SC"}, {1,2,3,44,5,6}}, | ||
+ | { 10, 30, 1800000, 550000, {"Rua Ana da Silva", 30, "Itajai", "SC"}, {1,2,33,4,5,6}}, | ||
+ | }; | ||
+ | |||
+ | /* retorna a media dos premios da quina (prêmio por por pessoa) em todos os jogos | ||
+ | que ocorreram em um dado estado*/ | ||
+ | |||
+ | float media_premio_quina(char estado[3]) | ||
+ | { | ||
+ | } | ||
+ | |||
+ | /* retorna | ||
+ | 0 se NÃO existe jogo com sena existente no vetor passado | ||
+ | 1 se existe jogo com sena | ||
+ | */ | ||
+ | |||
+ | int teste_jogo_sena(int vet[6]) | ||
+ | { | ||
+ | } | ||
+ | |||
+ | /* retorna o total de jogos na mesma cidade */ | ||
+ | int total_jogos_mesmo_local(char estado[3]) | ||
+ | { | ||
+ | } | ||
+ | |||
+ | void main() | ||
+ | { | ||
+ | }</syntaxhighlight> | ||
Edição das 10h49min de 28 de abril de 2015
Exercícios com Structs
Exercício 1
Implementar uma função converte_para_polar que recebe como parâmetro um número complexo na forma retangular (representado por uma struct). A função deve retornar uma struct contendo o número complexo na forma polar.Usar as funções sqrtf e atanf da [matemáticas biblioteca matemática]. Como converter:
- ou
NOTE que as funções atanf e similares retornam em RADIANOS.
#include <stdio.h>
#include <math.h>
struct tipo_ret {
float x;
float y;
};
struct tipo_polar {
float mod;
float ang;
};
/* Função para converter complexo retangular em polar */
struct tipo_polar converter_ret_pol(struct tipo_ret num_ret)
{
struct tipo_polar num_polar;
float aux;
aux = num_ret.x*num_ret.x + num_ret.y*num_ret.y;
/* falta a lógica para detectar o quadrante */
num_polar.mod = sqrtf(aux);
num_polar.ang = atanf(num_ret.y/num_ret.x);
return num_polar;
}
/* Função para imprimir complexo retangular */
void imprimir_complexo_ret(struct tipo_ret num_ret)
{
printf("Coordenada x = %f", num_ret.x);
printf("Coordenada y = %f\n", num_ret.y);
}
/* Função para imprimir complexo retangular */
void imprimir_complexto_pol(struct tipo_ret num_ret)
{
printf("Coordenada x = %f", num_ret.x);
printf("Coordenada y = %f\n", num_ret.y);
}
main()
{
struct tipo_ret num1;
struct tipo_polar num2;
num1.x = 5;
num1.y = 10;
num2 = converter_ret_pol (num1);
}
Exercício 2
Implementar uma função que some dois números complexos no formato retangular e retorne a soma como um complexo retangular.
Exercício 3
Implementar uma função que some dois números complexos no formato polar e retorna a soma no formato polar.
Avaliação Semestre Passado
Professor Eraldo.
Avaliação: Turma 1
Implementar as funções indicadas abaixo:
#include <stdio.h>
struct tipo_local{
char rua[30];
int numero;
char cidade[30];
char estado[3];
};
struct tipo_jogo {
int ganhadores_sena;
int ganhadores_quina;
float premio_sena;
float premio_quina;
struct tipo_local local;
int resultado[6];
} Jogos[5] =
{
{ 1, 5, 1200000, 500000, {"Rua Pedro da Silva", 30, "Florianopolis", "SC"}, {1,2,3,4,5,6}},
{ 4, 10, 1500000, 100000, {"Rua Joao da Silva", 30, "Cruz Alta", "RS"},{10,20,33,44,54,6}},
{ 3, 20, 2000000, 300000, {"Rua Maria da Silva", 30, "Curitiba", "PR"}, {1,2,3,4,5,43}},
{ 2, 50, 1300000, 600000, {"Rua Jose da Silva", 30, "Tijucas", "SC"}, {1,2,3,44,5,6}},
{ 10, 30, 1800000, 550000, {"Rua Ana da Silva", 30, "Itajai", "SC"}, {1,2,33,4,5,6}},
};
/* retorna a media dos premios da sena por pessoa em todos os jogos */
float media_premio_sena()
{
}
/* retorna
0 se NÃO existe jogo existente com o vetor passado
1 se existe jogo com sena
*/
int teste_jogo(int vet[6])
{
}
int num_jogos_estado(char estado[3])
{
}
void main()
{
}
Avaliação: Turma 2
Implementar as funções indicadas abaixo:
#include <stdio.h>
struct tipo_local{
char rua[30];
int numero;
char cidade[30];
char estado[3];
};
struct tipo_jogo {
int ganhadores_sena;
int ganhadores_quina;
float premio_sena;
float premio_quina;
struct tipo_local local;
int resultado[6];
} Jogos[5] =
{
{ 1, 5, 1200000, 500000, {"Rua Pedro da Silva", 30, "Florianopolis", "SC"}, {1,2,3,4,5,6}},
{ 4, 10, 1500000, 100000, {"Rua Joao da Silva", 30, "Cruz Alta", "RS"},{10,20,33,44,54,6}},
{ 3, 20, 2000000, 300000, {"Rua Maria da Silva", 30, "Curitiba", "PR"}, {1,2,3,4,5,43}},
{ 2, 50, 1300000, 600000, {"Rua Jose da Silva", 30, "Tijucas", "SC"}, {1,2,3,44,5,6}},
{ 10, 30, 1800000, 550000, {"Rua Ana da Silva", 30, "Itajai", "SC"}, {1,2,33,4,5,6}},
};
/* retorna a media dos premios da quina (prêmio por por pessoa) em todos os jogos
que ocorreram em um dado estado*/
float media_premio_quina(char estado[3])
{
}
/* retorna
0 se NÃO existe jogo com sena existente no vetor passado
1 se existe jogo com sena
*/
int teste_jogo_sena(int vet[6])
{
}
/* retorna o total de jogos na mesma cidade */
int total_jogos_mesmo_local(char estado[3])
{
}
void main()
{
}
<< | Aula 15 | <> |
---|