You are on page 1of 2

UNIVERSIDADE FEDERAL DO PIAUÍ

DEPARTAMENTO DE COMPUTAÇÃO
DISCIPLINAS: Algoritmos e Programação e Introdução a Computação
Prof.: Flávio Ferry de Oliveira Moreira

Segundo Estudo Dirigido de Algoritmos em Linguagem C (com respostas


testadas)

1. Precisamos de um programa para responder se um determinado ano inserido


pelo usuário é ou não bissexto. A regra para definir que um ano é bissexto diz
o seguinte:
a. A cada 4 anos um é bissexto;
b. Todos os anos múltiplos de 400 são bissextos;
c. Não são bissextos anos múltiplos de 100.
Apresente seu programa com funções para cálculo de múltiplo e de detecção de
bissexto.

#include<stdio.h>

int multiplo(int num, int div){

if(num % div == 0)
return 1;
else
return 0;
}

int bissexto(int ano){

// se não quiser definir a função múltiplo fica:


//if(ano % 4 == 0 && ano % 100 != 0 || ano % 400 == 0)

if((multiplo(ano, 4) && !multiplo(ano, 100)) || multiplo(ano, 400))


return 1;
else
return 0;
}

int main(void){

int ano;

printf("Introduza um ano: ");


scanf("%d", &ano);

if(bissexto(ano))
printf("Ano bissexto.");
else
printf("Ano comum.");

fflush(stdin);
return 0;
}

2. Faça um programa onde o usuário insira um número inteiro e este número seja
desmembrado em suas casas de potência (unidade, dezena, centena, etc).

Página: 1
UNIVERSIDADE FEDERAL DO PIAUÍ
DEPARTAMENTO DE COMPUTAÇÃO
DISCIPLINAS: Algoritmos e Programação e Introdução a Computação
Prof.: Flávio Ferry de Oliveira Moreira

#include <stdio.h>

int main(){
int num,pot;
printf("Informe um numero inteiro: ");
scanf("%d",&num);
printf("\nDesmembrando as casas de seu numero...\n");
pot=0;
while(num>0)
{
printf("casa %d - %d\n",pot,num%10);
num= num/10;
pot++;
}
return 0;
}

3. Em um experimento de nossos laboratórios foi feito um trajeto de carro com


tanque cheio. Supondo que seu medidor seja confiável e indique o volume
presente em fração (decimal), simule o funcionamento de um computador de
bordo que informe ao motorista: consumo estimado do carro e autonomia
estimada com o combustível restante. A capacidade do tanque é fixa no
algoritmo, neste caso em 45 litros.
*No seu programa os valores são digitados pelo usuário, em um momento futuro, esses
valores serão preenchidos por sensores.

#include <stdio.h>

int main()
{
int capacidade=45;
float distancia, comb, sobra, consumo;
printf("\nComputador de Bordo.\n");
printf("\nQual a distancia percorrida? ");
scanf("%f",&distancia);
printf("\nQuanto mede o marcador? ");
scanf("%f",&comb);
sobra=capacidade*comb;
consumo=distancia/(capacidade-sobra);
printf("Consumo desta viagem: %.2f Km/l\n\n",consumo);
printf("Autonomia prevista: %.2f Km.\n\n",consumo*sobra);
return 0;
}

Página: 2

You might also like