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


COMPUTAÇÃO - ALGORÍTIMO..., Notas de estudo de Engenharia Civil

Conteúdo relacionado a programação em C++

Tipologia: Notas de estudo

2013

Compartilhado em 09/07/2013

milleide-rodrigues-9
milleide-rodrigues-9 🇧🇷

1 documento

1 / 35

Toggle sidebar

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

Não perca as partes importantes!

bg1
FACULDADE EVANGÉLICA DE GOIANÉSIA
CURSO: ENGENHARIA CIVIL
2° PERÍODO – COMPUTAÇÃO I
FUNÇÕES
GOIANÉSIA
Julho/2013.
DENIS SILVA DE MIRANDA
DIONEY ANTONIO ROMEIRO
GUSTAVO FIUZA FEITOSA
HENRIQUE PEREIRA SEVERINO
LUDIMILA DE ANDRADE SILVA
MILLEIDE RODRIGUES CARNEIRO
PAGE 4
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23

Pré-visualização parcial do texto

Baixe COMPUTAÇÃO - ALGORÍTIMO... e outras Notas de estudo em PDF para Engenharia Civil, somente na Docsity!

FACULDADE EVANGÉLICA DE GOIANÉSIA

CURSO: ENGENHARIA CIVIL

2° PERÍODO – COMPUTAÇÃO I

FUNÇÕES

GOIANÉSIA

Julho/2013.

DENIS SILVA DE MIRANDA

DIONEY ANTONIO ROMEIRO

GUSTAVO FIUZA FEITOSA

HENRIQUE PEREIRA SEVERINO

LUDIMILA DE ANDRADE SILVA

MILLEIDE RODRIGUES CARNEIRO

FUNÇÕES

Trabalho apresentado à Faculdade Evangélica de Goianésia, 2º Período do Curso de Graduação em Engenharia Civil, sob a orientação do Prof. Dr. Marcus Vinicius Silva Cavalcanti, responsável pela disciplina de Computação I, como requisito para obtenção de nota para compor a 2ª V.A.

Prof. Dr. MARCUS VINICIUS SILVA CAVALCANTI

GOIANÉSIA

Julho/2013.

SUMÁRIO

INTRODUÇÃO 03

1. BIBLIOTECAS E FUNÇÕES DA LINGUAGEM C 04

1.1 Computação e programação 04 1.2 Algoritmo, etapas de modelagem e exemplos 05

2. A LINGUAGEM C 06 2.1 Histórico 06 2.2 Estrutura básica do código fonte, escrita e leitura 07 2.3 Estruturas condicionais, sintaxe, utilização e exemplos 10 2.4 Estruturas de repetição, sintaxe, utilização e exemplos 11 2.5 Operadores relacionais 13 2.6 Operadores matemáticos 14 2.7 Operadores lógicos 14 3. EQUAÇÕES E SEUS EXEMPLOS 15

Figura 1 04

INTRODUÇÃO

1. BIBLIOTECAS E FUNÇÕES DA LINGUAGEM C

1.1. Definições

Bibliotecas são conjuntos de funções que se encontram compiladas em arquivos com a extensão “.a” e “.lib”, nos sistemas operacionais Linux e Windows respectivamente. Para utilizar as funções de uma determinada biblioteca, é necessário incluir um arquivo com o protótipo das funções disponíveis por essa biblioteca (arquivo .h).

Pode-se definir uma função no início de um programa, antes da função principal ou até mesmo após a função principal. Se a definição de uma função não é feita no início do programa, então é necessário fazer a declaração da função para que o compilador a reconheça quando esta for chamada dentro da função principal ou dentro outra função.

De uma forma geral, as funções possuem três partes básicas. O tipo que pode ser void , também chamada de função sem retorno ou de qualquer outro tipo suportado pela linguagem, o nome da função que pode ser uma palavra reservada das bibliotecas do C, ou um nome dado pelo programador caso esta tenha sido estruturada durante a criação do programa, e por fim a declaração dos parâmetros ou argumentos que são passados

  • Nome da função - define o nome (o rótulo) da função. É através deste nome que a função é chamada.
  • Lista de parâmetros – é uma lista, separada por vírgula, contendo a declaração das variáveis (parâmetros ou parâmetros formais) que recebem os argumentos (parâmetros reais - valores usados para chamar a função) quando a função é chamada. Uma função pode não possuir parâmetros, ou seja, não receber argumentos. Neste caso utiliza-se a declaração do tipo void. Funções pré-definidas da linguagem C são funções pré-programadas da linguagem e guardadas em biblioteca de acordo com seu uso. São funções robustas onde o programador não tem o acesso ao corpo da função, apenas aos seus resultados. Seu uso é feito por meio de chamadas no programa principal main ou em outras funções. Para utilizar esses recursos o programador deve indicar seu uso através da diretiva #include no inicio do código. São exemplos de bibliotecas:
  1. #include < stdio.h > Contém protótipos de funções da biblioteca padrão de entrada/saída e as informações utilizadas por elas. Ex: printf() - mostra dados formatados no dispositivo de saída padrão; scanf() - lê dados formatados do dispositivo de entrada padrão;
  2. #include < stdlib.h >Contém protótipos de funções variadas para: conversão de números em texto e texto em números, alocação de memória, números aleatórios; e outras funções. Ex: int abs(int x) - retorna o valor absoluto de x; int rand (void) - devolve um número inteiro no intervalo fechado; int system - command é uma string que contém o nome do comando, como por exemplo: system(“cls”); // limpa tela; e system(“pause”); // pausa na execução do programa.
  3. #include < math.h > Contém protótipos de funções da biblioteca matemática. Ex: double sin (double x) ; seno de x; double sqrt (double x) ; raiz quadrada de x (x>=0).

Constantes são valores que não se alteram durante todo o programa. As constantes são inversas as variáveis. Depois de definir o valor de uma contante, este valor não pode ser alterado. A definição de contante é justificada, pois facilita a leitura e compreensão de um programa. Por exemplo, ao invés de utilizar o valor 3. durante o programa, pode-se definir uma contante PI para representar este valor. Exemplo: #include #define PI 3. main() { printf(“Valor de pi = %f”, PI); }

Como forma de padronização, as constantes em C são definidas em letras maiúsculas. Para se definir o nome de uma constante, devem-se seguir os mesmos critérios da declaração de variáveis.

1.2. Parâmetros

A linguagem C permite o uso de parâmetros que possibilitam que seja definida sobre quais dados a função deve operar. A função sound(freq) , por exemplo, recebe como parâmetro a frequência do som a ser gerado, permitindo que se defina seu comportamento a partir deste valor.

Para definir os parâmetros de uma função o programador deve explicitá-los como se estive declarando uma variável, entre os parênteses do cabeçalho da função. Caso precise declarar mais de um parâmetro, basta separá-los por vírgulas. No exemplo a seguir temos a função SOMA que possui dois parâmetros, sendo o primeiro um float e o segundo um int. void SOMA( float a, int b) // basta separar por vírgulas float result ;// a declaração de variáveis é igual ao que se faz na função main result = a+b; printf ("A soma de %6.3f com %d é %6.3f \n, a,b, Result ); } Os parâmetros da função na sua declaração são chamados parâmetros formais. Na chamada da função os parâmetros são chamados parâmetros atuais. Os parâmetros são passados para uma função de acordo com a sua posição. Ou seja, o primeiro parâmetro atual (da chamada) define o valor o primeiro parâmetro formal (na definição da função), o segundo parâmetro atual define o valor do segundo parâmetro formal e assim por diante. Os nomes dos parâmetros na chamada não tem relação com os nomes dos parâmetros na definição da função.

Por meio do C++ é possível fazer diversos códigos fontes capazes até de realizar cálculos matemáticos dando informações precisas para a solução de determinados problemas. Para tanto, desenvolveu-se, neste trabalho, um programa principal, ligado a diversas bibliotecas por meio de funções, o qual permite ao usuário o cálculo de equação do 2º grau, equação da reta ou equação do 1º grau, volume dos sólidos, tais como: cone, cilindro, esfera, pirâmide e prisma de base poligonal regular, e área superficial dos mesmos sólidos citados acima. O programa principal é demonstrado a seguir:

eq1g(); main(); break;

case 3: printf("\n Escolheu 3\n"); vmsol(); main(); break;

case 4: printf("\n Escolheu 4\n"); assol(); main(); break;

case 5: printf("\n SAIR \n"); break;

default:printf("\n Escolha errada !");main();break; }

return 0; }

2. EQUAÇÃO DE 2º GRAU

Equação é definida como toda e qualquer igualdade (=) que somente pode ser satisfeita para alguns valores que estejam agregados em seus domínios. Segundo Giovanni (1994, p.75), “A função f : IR IR dada por f(x) = ax² + bx + c, com a, b, c reais e a ≠ 0, denomina-se função do 2º grau ou função quadrática ”. Quando se tem uma equação do 2º grau, deve-se calcular a raiz desta equação, que é o resultado final da mesma. As equações do 2 º grau podem ter até duas raízes, que irá depender do valor do delta (∆) encontrado por meio da fórmula de Bháskara. Para tanto, quando o delta (∆) for maior ou igual a zero encontra-se duas raízes reais como solução, quando o delta (∆) for igual a zero, tem-se uma única raiz real, e quando o delta (∆) for menor que zero, um número negativo, encontra-se raízes com parte real e parte imaginária, pelo fato de que dentre o

conjunto dos números reais não existir raiz quadrada de números negativos, desta forma esse tipo de solução é escrito da forma: a + bi, em que i é associado ao valor -1, chamada de forma normal ou algébrica. A representação da equação do 2º grau no gráfico cartesiano é uma parábola, que de acordo com o coeficiente de “a” pode possuir concavidade voltada para cima ou para baixo. Se o “a” for maior que zero, a concavidade é voltada para cima, e se “a” for menor que zero, a concavidade é voltada para baixo. As equações do 2º grau, bem como suas raízes, sendo elas reais ou imaginárias podem ser encontradas utilizando-se o compilador C++. Para isto é necessário que o programador utilize as bibliotecas de maneira adequada, bem como as instruções, operadores, estruturas, e todas as bibliotecas necessárias. Para calcular as raízes reais de uma equação do 2º grau no C++, é necessário que todo o código fonte esteja realmente focado em todas as condições possíveis para que se encontrem as soluções. Para tanto, desenvolveu-se o seguinte código fonte dentro da biblioteca chamada eq2g.h:

#include<math.h>

// declaracao de variaveis

float Delta(float x, float y, float z) { float delta=yy-4x*z; return delta; }

void eq2g() { printf("\n BEM VINDO A BIBLIOTECA EQ2G.h \n");

float a=0.0, b=0.0, c=0.0, d=0.0; float x1=0.0, x2=0.0;

printf("\n Digite os coeficientes a,b e c => "); scanf("%f %f %f",&a,&b,&c);

d=Delta(a,b,c);

if(d>=0) { x1=(-b+sqrt(d))/(2a); x2=(-b-sqrt(d))/(2a);

printf("\n a=%7.3f b=%7.3f c=%7.3f d=%7.3f",a,b,c,d); printf("\n d=%7.3f x1=%7.3f x2=%7.3f\n",d,x1,x2); }

if(d<0) { x1=(-b)/(2a); // parte real da raiz imaginaria x2=sqrt(-d)/(4a); // parte imaginaria

As equações do 1º grau, assim como a equação do 2º grau, bem como os pontos que interceptam o eixo x e o eixo y, também podem ser encontradas utilizando-se o compilador C++. Para tanto também se faz necessário que o programador utilize as bibliotecas de maneira adequada. Para calcular a equação da reta e os pontos que interceptam o eixo x e o eixo y da equação do 1º grau no C++, desenvolveu-se o seguinte código fonte dentro da biblioteca chamada eq1g.h:

#include<math.h> void eq1g() { printf("\n BEM VINDO A BIBLIOTECA EQ1G.h \n"); // declaracao de variaveis float x1=0.0, y1=0.0, x2=0.0, y2=0.0; float dx=0.0, dy=0.0, A=0.0, B=0.0, C=0.0; int opc=0; printf("\n Digite as coordenadas x e y do ponto 1 => "); scanf("%f %f",&x1,&y1); printf("\n Digite as coordenadas x e y do ponto 2 => "); scanf("%f %f",&x2,&y2); dx=x2-x1; dy=y2-y1; A=dy/dx; B=y1-Ax1; C=-B(dx/dy); printf("\n Pontos fornecidos"); printf("\n P1 (%7.3f, %7.3f)",x1,y1); printf("\n P2 (%7.3f, %7.3f)",x2,y2); printf("\n \n Equacao da reta "); printf("\n f(x) = %7.3f * X + %7.3f",A,B); menu: // menu para escolha printf("\n ================================== "); printf("\n 1 - Ponto onde a reta intercepta y "); printf("\n 2 - Ponto onde a reta intercepta x "); printf("\n 3 - Nao quero saber mais nada! "); printf("\n ================================== \n"); scanf("%d",&opc); //inserindo o comutador switch case switch(opc) { case 1:

printf("\n A reta intercepta y em "); printf("\n (0.000, %7.3f)",B); goto menu; break; case 2: printf("\n A reta intercepta x em "); printf("\n (%7.3f, 0.000)",C); goto menu; break; case 3: break; default: printf("\n Escolha um numero entre 1 e 3 !\n"); } system("pause"); system("cls"); return; }

Após a inserção de todos os dados necessários no programa depois de ser compilado para o cálculo da equação da reta e dos pontos que interceptam o eixo x e o eixo y, de uma equação do 1º grau, têm-se o seguinte resultado:

Figura 2 – Equação de 1º grau

4. VOLUME DE SÓLIDOS

Todos os objetos que nos circundam, para além de ocuparem um determinado espaço, tem também uma determinada superfície de contato com o espaço exterior. Diremos que vários objetos têm o mesmo volume , se ocuparem o mesmo espaço, embora possam ter formas diferentes. Para calcular o volume dos sólidos no C++, desenvolveu-se o seguinte código fonte dentro da biblioteca chamada vmsol.h, em que também foi inserido um comutador switch case , no qual se tem um menu de escolha para que o usuário possa escolher o tipo do sólido que deseja calcular e encontrar seu volume:

#include<C:\teste\volumes.h> void vmsol() { int opc=0; system("cls"); printf("\n BEM VINDO A BIBLIOTECA VMSOL.h \n"); printf("\n CALCULO DO VOLUME DE SOLIDOS \n"); menu:

altura (h) do cone. O comprimento da face lateral é denominado geratriz (g) do cone. Para calcular o volume do cone multiplica-se a área da base pela medida da altura e dividimos o resultado por três.

Exemplo 1:

Um copo será fabricado no formato de um cone com as seguintes medidas: 4 cm de raio e 12 cm de altura. Qual será a capacidade do copo?

Exemplo 2:

Uma fábrica de doces e balas irá produzir chocolates na forma de guarda-chuva, com as seguintes medidas: 8 cm de altura e 3 cm de raio de acordo com a ilustração. Qual a quantidade de chocolate utilizada na produção de 2000 peças?

Cada chocolate possui 75,36 cm³ de volume. A fábrica quer produzir 2000 peças, então: 2.000 * 75,36 = 150.720 cm³. Como 1 cm³ = 1ml, têm-se 150.720 ml de chocolate que corresponde a 150,72 litros.

Para calcular o volume do cone no C++, criou-se uma biblioteca chamada volumes.h, que passa informações à biblioteca chamada vmsol.h, em que quando o usuário digita a opção “1” do menu de escolha o programa calcula o volume do cone. A parte da biblioteca criada que contém informações necessárias para o cálculo do volume do cone é a seguinte:

//================= VOLUME DO CONE ======================

void vcone() { printf("\n CALCULO DO VOLUME DO CONE \n");

float r=0.0, h=0.0, vol=0.0; float PI=3.14159265359;

// r = raio // h = altura // vol = volume

printf("\n Digite o valor do raio => "); scanf("%f",&r);

printf("\n Digite o valor da altura => "); scanf("%f",&h);

vol=0.333333333PIrrh;

printf("\n O volume do cone e igual a = %7.3f unidades cubicas \n",vol);

system("pause"); return; }

Após a inserção de todos os dados necessários no programa depois de ser compilado para o cálculo do volume do cone, têm-se o seguinte resultado:

Figura 3 – Volume de um cone

4.2. Cilindro

O cilindro é um sólido geométrico que pode ser entendido como um círculo prolongado até uma altura “h”, e que possui duas faces iguais e de formato circular. O cilindro é uma figura espacial formada através da revolução de uma região quadrada ou retangular.

Figura 4 – Cilindro

Como todo sólido geométrico o cilindro possui volume. O volume de um cilindro é dado através da multiplicação da área de sua base pela altura. O cilindro possui está presente em diversas situações cotidianas pela sua capacidade de

Para calcular o volume do cilindro no C++, também se utiliza a biblioteca chamada volumes.h, em que quando o usuário digita a opção “2” do menu de escolha o programa calcula o volume do cilindro. A parte da biblioteca criada que contém informações necessárias para o cálculo do volume do cilindro é a seguinte:

//================= VOLUME DO CILINDRO ====================== void vcilindro() { printf("\n CALCULO DO VOLUME DO CILINDRO \n");

float r=0.0, h=0.0, vol=0.0; float PI=3.14159265359;

printf("\n Digite o valor do raio => "); scanf("%f",&r);

printf("\n Digite o valor da altura => "); scanf("%f",&h);

vol=PIrr*h;

printf("\n O volume do cilindro e igual a = %7.3f unidades cubicas\n",vol);

system("pause"); return; }

Após a inserção de todos os dados necessários no programa depois de ser compilado para o cálculo do volume do cilindro, têm-se o seguinte resultado:

Figura 5 – Volume de um cilindro

4.3. Esfera

A esfera é um sólido geométrico obtido pela revolução de uma semicircunferência sobre um eixo. É considerado o sólido geométrico mais perfeito que existe, sendo considerado, por muitos matemáticos, como o símbolo da perfeição.

Figura 6 – Esfera

Esse corpo circular possui inúmeras aplicações cotidianas. Seu volume depende do tamanho do raio, que é à distância do centro da esfera a qualquer ponto de sua superfície. A fórmula matemática utilizada para determinar o volume da esfera é a seguinte:

Exemplo 1: Uma esfera possui raio medindo 5 cm. Determine o volume dessa esfera.

A esfera possui 523,33 cm³ de volume.

Exemplo 2 : Duas esferas metálicas de raios r e 2r são fundidas e moldadas em forma de um cilindro de altura 3r. Qual é o raio R do cilindro? Volume da esfera metálica de raio r

Volume da esfera metálica de raio 2r

Somar os volumes das esferas

Volume do cilindro será igual ao volume das esferas. Volume do cilindro = π * r² * h, onde altura igual a 3r. Vamos determinar o raio “R” do cilindro. π * R² * 3r = 12 * π * r³ R² = 12 * r³ / 3r R² = 4r² R = 2r Temos que o raio do cilindro é 2r.

Para calcular o volume da esfera no C++, se utiliza a biblioteca volumes.h, em que quando o usuário digita a opção “3” do menu de escolha o programa calcula o