Você está na página 1de 2

Exerccios de Reviso e Fixao Exerccio 1

Atividade 1 Escreva a estrutura (struct) hora, conforme a figura abaixo: hora int hora; int min; int seg; Atividade 2 Escreva a funo validaHora, que retorna um booleano (bool) se a hora informada vlida ou no. Uma hora vlida se os valores do campo hora esto entre 0 e 23, se os valores do campo minuto esto entre 0 e 59 e se os valores do campo segundo esto entre 0 e 59. Veja abaixo o prottipo desta funo: bool validaHora(); Atividade 3 Escreva a funo escreve, que retorna uma string contendo a hora no formato HH:MM:SS. Veja abaixo o prottipo desta funo: string escreve(); Atividade 4 Alm das funes anteriores, acrescente as seguintes: Funo que converte a hora (hora, minuto e segundo) em segundos. Funo que soma um segundo hora. Exemplo: Entrada Hora 6 11 20 23 Minuto 10 4 59 59 Segundo 30 59 4 59 Hora 6 11 20 0 Sada Minuto 10 5 59 0 Segundo 31 0 5 0

Atividade 5 Escreva a funo calcTempo. Esta funo recebe duas horas e deve retornar o tempo decorrido entre a hora inicial e a hora final. Veja abaixo o prottipo desta funo: struct hora calcTempo(struct hora horainicial, struct hora horafinal);

Dica 1: Para calcular a diferena de tempo entre duas horas converter o horrio para segundos. Atividade 6 Teste o seu programa criando e inicializando duas structs hora. Teste todas as funes definidas no programa.

Exerccio 2
Atividade 1 Escreva a estrutura (struct) ponto, conforme a figura abaixo, que armazena um ponto no espao (coordenadas X e Y). ponto int coordX int coordY Atividade 2 Defina trs variveis ponto. Exemplo abaixo: struct ponto p1; struct ponto p2; struct ponto p3; Acrescente no seu programa as seguintes funes: 1. Funo para calcular a distncia entre dois pontos: int calcDist(struct ponto a, struct ponto b); Sendo (X1,Y1) o ponto A e (X2,Y2) o ponto B, a frmula para o clculo da distncia entre dois pontos :

Distncia= x1x22 y1 y2 2
2. Funo que retorna true se os pontos formam um tringulo, se no formam deve retornar false. Trs pontos formam um tringulo se obedecem a seguinte propriedade: a medida de qualquer lado menor que a soma das medidas dos outros dois. Sendo ab , bc e ac as medidas dos lados de um tringulo qualquer, estes pontos formam um tringulo se obedecerem as seguintes condies: ab < bc + ac bc < ab + ac ac < ab + bc 3. Funo que retorna o tipo do tringulo (caso os pontos formem um tringulo); string tipoLados(struct ponto a, struct ponto b, struct ponto c); Os tipos de tringulo, em relao aos lados so: Equiltero: trs lados iguais Issceles: dois lados iguais Escaleno: trs lados diferentes 4. Retornar o tipo do tringulo em relao aos ngulos (caso os pontos formem um tringulo); string tipoAngulos(struct ponto a, struct ponto b, struct ponto c); Os tipos de tringulo, em relao aos ngulos so: a2 = b2 + c2 o tringulo Retngulo, sendo a o maior lado a2 > b2 + c2 o tringulo Obtusngulo, sendo a o maior lado a2 < b2+ c2 o tringulo Acutngulo, sendo a o maior lado