TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Visualg

Pesquisas Acadêmicas: Visualg. Pesquise 862.000+ trabalhos acadêmicos

Por:   •  9/10/2013  •  886 Palavras (4 Páginas)  •  1.377 Visualizações

Página 1 de 4

Métodos Computacionais 2010/01

Aula Prática – Ponteiros, Funções

1. Escreva uma função chamada de potencia que calcula a potência entre dois números inteiros não negativos (base e expoente) passados como parâmetros e retorna este valor.

2. Faça um programa completo (função main e inclusão dos arquivos de cabeçalhos adequados) que utilize a função potencia. O programa deve ler a base e o expoente e imprimir o resultado.

3. Implemente a função raizes, que calcula as raízes de uma equação do segundo grau, do tipo ax2 + bx + c = 0. Essa função deve obedecer ao protótipo:

int raizes (float a, float b, float c, float * x1, float * x2);

onde a, b e c representam os coeficientes da equação, e x1 e x2 são ponteiros para as

variáveis onde devem ser guardadas as raízes da equação. A função deve retornar o

número de raízes reais que a equacão possui.

Observacões:

(a) Se as raízes forem reais e distintas, a função deve retornar 2.

(b) Se as raízes forem reais e iguais x1 = x2 e a função deve retornar 1.

(c) Se não existirem raízes reais, a função deve retornar 0.

(d) Para o cálculo da raiz quadrada de um número, utilize a função sqrt definida

na biblioteca padrão de funções do C. Essa função está definida no arquivo de

cabeçalhos math.h e tem o protótipo:

double sqrt (double n);

4. Faça um programa completo (função main e inclusão dos arquivos de cabeçalhos adequados) que utilize a função raizes. O programa deve ler os coeficientes da equação de 2º grau e imprimir as raízes caso existam. Se não houver raízes reais, deve ser impressa a mensagem “NÃO EXISTEM RAIZES REAIS PARA ESTA EQUAÇÃO”.

5. Escreva uma função que calcule a soma dos números pares e a soma dos números impares de 0 até um número inteiro n passado como parâmetro. A função deve se chamar somaParesImpares. Use passagem de parâmetros por referência em somaParesImpares para que outra função que chamá-la possa obter as duas somas.

6. Faça um programa completo (função main e inclusão dos arquivos de cabeçalhos adequados) que utilize a função somaParesImpares. O programa deve ler o inteiro n e imprimir a soma de todos os valores pares até n e a soma de toso os valores ímpares até n.

SOLUÇÕES

/* 1a e 2a QUESTÕES */

#include <stdio.h>

#include <stdlib.h>

unsigned int potencia(unsigned int base, unsigned int exp) {

unsigned int i,pot = 1;

for (i = 0; i < exp; i++)

pot = pot * base;

return pot;

}

int main()

{

unsigned int base, expoente, r;

printf("Digite 2 numeros nao negativos. ");

printf("O primeiro eh a base e o outro eh o expoente\n. ");

scanf("%u %u",&base,&expoente);

r = potencia(base,expoente);

printf("A potencia de %u elevado %u eh: %u \n" ,base, expoente,r);

system("PAUSE");

return 0;

}

/* 3a e 4a QUESTÕES */

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

int raizes(float a, float b, float c, float *x1, float *x2) {

float delta;

int numeroRaizes;

delta = (b*b) - (4*a*c);

if (delta < 0) {

...

Baixar como (para membros premium)  txt (4.4 Kb)  
Continuar por mais 3 páginas »
Disponível apenas no TrabalhosGratuitos.com