Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Programação C , Exercícios de Engenharia de Produção

Exercícios resolvidos de modularização em C

Tipologia: Exercícios

Antes de 2010

Compartilhado em 30/06/2010

laiz-segrini-8
laiz-segrini-8 🇧🇷

5

(2)

2 documentos

1 / 8

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Lista de Exercícios 1 – Modularização
Exercício 1 Faça um programa que calcule e mostre o CÁLCULO DA HIPOTENUSA,
sabendo as medidas dos catetos do triângulo retângulo.
Resolução:
#include<stdio.h>
#include<stdlib.h>
#include<math.h>//Para as funções sqrt e pow
float calc_hipo(float c1, float c2);
main()
{
float hipotenusa, cat1, cat2;
printf("Digite os valores dos catetos: ");
scanf("%f%f", &cat1, &cat2);
hipotenusa = calc_hipo(cat1, cat2);
printf("\n\nO valor da hipotenusa e %.1f\n\n", hipotenusa);
system("pause");
}
float calc_hipo(float c1, float c2)
{
float hipo;
hipo = sqrt(pow(c1,2)+pow(c2,2));
return(hipo);
}
Exercício 2 Faça um programa simples em C, para cada item abaixo, empregando os
conceitos descritos e verifique qual será o valor final das variáveis solicitadas. Você deve
estimar os dados de entrada.
(a) Crie uma função para efetuar e mostrar o resultado da operação C = M + W;
Resolução:
#include<stdio.h>
#include<stdlib.h>
void soma(int m, int w);
main()
{
int m, w;
printf(“Digite dois numeros inteiros: “);
scanf(“%d%d”, &m, &w);
soma(m, w);
system(“pause”);
pf3
pf4
pf5
pf8

Pré-visualização parcial do texto

Baixe Programação C e outras Exercícios em PDF para Engenharia de Produção, somente na Docsity!

Lista de Exercícios 1 – Modularização

Exercício 1 – Faça um programa que calcule e mostre o CÁLCULO DA HIPOTENUSA, sabendo as medidas dos catetos do triângulo retângulo. Resolução: #include #include #include//Para as funções sqrt e pow

float calc_hipo(float c1, float c2);

main() { float hipotenusa, cat1, cat2;

printf("Digite os valores dos catetos: "); scanf("%f%f", &cat1, &cat2);

hipotenusa = calc_hipo(cat1, cat2);

printf("\n\nO valor da hipotenusa e %.1f\n\n", hipotenusa);

system("pause"); } float calc_hipo(float c1, float c2) { float hipo;

hipo = sqrt(pow(c1,2)+pow(c2,2));

return(hipo); }

Exercício 2 – Faça um programa simples em C, para cada item abaixo, empregando os conceitos descritos e verifique qual será o valor final das variáveis solicitadas. Você deve estimar os dados de entrada. (a) Crie uma função para efetuar e mostrar o resultado da operação C = M + W; Resolução: #include #include

void soma(int m, int w);

main() { int m, w;

printf(“Digite dois numeros inteiros: “); scanf(“%d%d”, &m, &w);

soma(m, w);

system(“pause”);

void soma(int m, int w) { int c;

c = m + w;

printf(“\n\nO valor da soma e %d\n\n”, c); }

(b) Crie um função para efetuar e retornar o resultado da operação C = M + W; Resolução: #include #include

int soma(int m, int w);

main() { int m, w, c;

printf(“Digite dois numeros inteiros: “); scanf(“%d%d”, &m, &w);

c = soma(m, w);

printf(“\n\nO valor da soma e %d\n\n”, c);

system(“pause”); }

int soma(int m, int w) { int c;

c = m + w; return( c ); }

Exercício 3 – Faça um programa C que leia 2 salários, identifique e imprima o maior. Use uma função para identificar o maior salário. A impressão do maior salário deve ser feita na função main. Resolução:

#include #include

float maior_sal(float s1, float s2);

main() { float salario1, salario2, maior_s;

while(s1==s2); }

float maior_sal(float s1, float s2) { if(s1>s2) return(s1); else return(s2); }

Exercício 4 - Faça um programa que calcule e mostre o CÁLCULO DA ÁREA DE UM QUADRADO, sabendo a medida do lado do quadrado. Faça uma versão deste problema para a área DE UM CÍRCULO; Resolução: #include #include

float calc_aq(float lado); float calc_ac(float raio);

main() { float lado_q, raio, area_q, area_c;

//Entrada de dados printf("Digite o valor do lado do quadrado: "); scanf("%f", &lado_q); printf("Digite o valor do raio do circulo: "); scanf("%f", &raio);

//Processamento de dados area_q = calc_aq(lado_q); area_c = calc_ac(raio);

//Saída de dados printf("\n\nArea do quadrado: %.1f\n\n", area_q); printf("\n\nArea do circulo: %.1f\n\n", area_c); system("pause"); }

float calc_aq(float lado) { return(lado*lado); }

float calc_ac(float raio) { const float pi=3.14; float area_c;

area_c = piraioraio;

return(area_c); }

Exercício 5 - Faça um programa que calcule e mostre o CÁLCULO DA ÁREA DE UM TRIÂNGULO, sabendo a medida da base e da altura do triângulo.

Exercício 6 – Crie o algoritmo CALCULADORA que apresente o menu abaixo e permita que o usuário efetue quantas e quais operações desejar com dois números lidos na opção 1 - Entrada de Dados. Ou seja, o usuário deve poder escolher a opção 1, digitar dois números e, em seguida, voltar ao menu para escolher qualquer das 4 operações. Após o usuário efetuar a escolha da operação, mostre o resultado e volte ao menu para que uma nova operação possa ser escolhida ou uma nova entrada de dados possa ser feita.

1 - Entrada de dados 2 - Adição 3 - Subtração 4 - Multiplicação 5 - Divisão 6 - Encerrar Escolha uma das operações:

Para mostrar o menu de opções use uma função. Use funções para implementar as opções 2, 3, 4 e 5. Em cada função use como parâmetros os dois valores numéricos lidos na opção 1; os quais serão usados nas operações de adição, subtração, multiplicação ou divisão, dependendo da operação realizada pela função. Cada função deve retornar o resultado da operação realizada. Na operação de divisão o denominador não pode ser nulo. Use uma função para verificar este fato antes de efetuar a divisão. Esta função deve ter como parâmetro o denominador da divisão e retornar verdadeiro caso o denominador seja nulo e falso caso contrário. Resolução:

include

include

float adicao (float a, float b) { return(a+b); }

float subtracao (float a, float b) { return(a-b); }

float multiplicacao(float a, float b) { return(a*b); } float divisao(float a, float b) { return(a/b); }

if (sinal=='s') { subt=subtracao(num1,num2); printf("\nSubtracao dos numeros %.2f - %.2f = %.2f\n\n",num1,num2, subt); break; } else printf("\nDeve-se entrar com os dados antes de fazer a operacao\n\n"); break; } case '4': { if (sinal=='s') { mult=multiplicacao(num1,num2); printf("\nMultiplicacao dos numeros %.2f * %.2f = %.2f\n\n",num1,num2, mult); break; } else printf("\nDeve-se entrar com os dados antes de fazer a operacao\n\n"); break; } case '5': { { if (sinal=='s') { if(verifica_deno(num2)==0) { div=divisao(num1,num2); printf("\nDivisao dos numeros %.2f / %.2f = %.2f\n\n",num1,num2, div); } else printf("\n O denominador deve ser diferente de zero!\n\n"); } else printf("\nDeve-se entrar com os dados antes de fazer a operacao\n\n"); break; } } case '6': { printf("\n\n\t\tFim do programa\n\n"); break; } default: printf("\n\nOpcao invalida\n\n"); } } system("pause"); }