Buscar

Métodos Computacionais - Digital - Unidade II.pdf

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 58 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 58 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 58 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Métodos Computacionais
Segunda Aula
Professor Adilson da Silva
▪Estruturas de 
Decisão em C
▪ Introdução à 
linguagem de 
Programação C
Objetivos
▪Estruturas de 
Repetição em C
▪Funções em C
• Conhecer como surgiu e compreender o 
motivo do sucesso como linguagem de 
programação da linguagem C;
• Aprender conhecimentos básicos sobre a 
linguagem C;
• Conhecer as diferentes estruturas e ser 
capaz de escolher a mais adequada 
para cada problema;
• Estudar as funções em C aprendendo 
como declarar e usar uma função;
• Ser capaz de criar programas básicos em 
C que sejam úteis para resolver 
problemas aplicados à engenharia.
Objetivos
• A Linguagem C foi inventada e foi 
implementada no inicio dos anos 70 por Dennis 
Ritchie em um DEC PDP-11, usando o Sistema 
Operacional UNIX.
• A linguagem C é o resultado do processo de 
desenvolvimento iniciado com outra 
linguagem, chamada BCPL, desenvolvida por 
Martin Richards. Esta linguagem influenciou a 
linguagem inventada por Ken Thompson, 
chamada linguagem B.
• Sendo assim a linguagem C é a evolução da 
linguagem B.
• A linguagem C se tornou uma das linguagens 
de programação mais utilizada, por ser flexível 
e ainda poderosa, sendo que ela é a 
responsável pela criação de alguns software 
famosos e a base de outros como jogos.
Conceitos Básicos da 
Linguagem C
• A linguagem C encontra seus limites 
quando o tamanho de um projeto 
ultrapassa certo ponto de 25.000 a 100.000 
linhas de código. Para a solução desse 
problema em 1980 um estudioso 
chamado Bjarne Stroustrup
acrescentando varias intenções na 
linguagem C deu origem à nova 
linguagem que se chamava inicialmente 
“C com classes”, e por volta dos anos 
1983 o nome foi mudado para linguagem 
C++.
Conceitos Básicos da 
Linguagem C
• Mais a evolução do C++ não parou com 
o Bjarne Stroustrup, muitas foram as 
implementações, até tornarem a 
linguagem C++ uma linguagem que 
suporta Programação Orientada a 
Objetos. As inspirações relacionadas 
acima deve através de outra linguagem 
de programação chamada Simula67.
• Atualmente a linguagem C / C++ é 
utilizada nas faculdades de Sistema de 
Informação e Ciência da Programação 
em aulas de Lógica de Programação e 
Estrutura de dados.
Conceitos Básicos da 
Linguagem C
IDE para 
Linguagem C++
• Utilizaremos a linguagem C++ para 
criar os programas;
• Download do DEV C++
• https://sourceforge.net/project
s/orwelldevcpp/
• Learn C++ Programing
• Móvel C [C/C++ Compiler]
https://sourceforge.net/projects/orwelldevcpp/
•Linguagem de Médio Nível
•Simples e amigável
•Excelente portabilidade
•Sintaxe Fácil
•Uso de funções e procedimentos
Linguagens C++
Estrutura da 
linguagem C++
Tipos de dados da 
Linguagens C++
Na linguagem de programação C, 
os dados podem assumir cinco tipos
básicos:
char, int ,float, double e void
Tipos de Dados na linguagem C
BITS INTERVALO
INÍCIO FIM
Char 8 -128 127
unsigned char 8 0 255
signed char 8 -128 127
int 16 -32768 32767
unsigned int 16 0 65535
signed int 16 -32768 32767
short int 16 -32768 32767
unsigned short int 16 0 65535
signed short int 16 -32768 32767
BITS INTERVALO
INÍCIO FIM
long int 32 -2147463648 2147463647
unsigned long int 32 0 4294967295
signed long int 32 -2147463648 2147463647
float 32 -3.4E-38 3.4E+38
double 64 1.7E-308 1.7E+308
long double 80 -3.4E-4932 3.4E+4932
Tipos de Dados na linguagem C
Operadores na 
Linguagem C
• Aritméticos
• Relacionais
• Lógicos
Operadores Aritméticos
Adição + int a = 2 + 2; // a = 4
Subtração - int b = 5 -2; // b = 3
Multiplicação * int c = 2 * 5; // c = 10
Divisão / int d = 6 / 3; // d = 2
Resto % int e = 5 % 2; // e = 1
Operadores Relacionais
Operadores Descrição Exemplo
< Maior que Int a = 3, b = 2; (a > b) true (b > a) false
> Menor que Int a = 3, b = 2; (a < b) false (b < a) true
>= Maior ou igual Int a = 3, b = 2, c = 2; (a >= b) true (a >= c) true
<= Menor ou igual Int a = 3, b = 2, c = 2; (a <= b) false (a <= c) true
== Igualdade Int a = 3, b = 2, c = 2; (a == b) false (a == c) true
!= Diferença Int a = 3, b = 2, c = 2; (a != b) true (a != c) false
Operadores Lógicos
Operadores Descrição Exemplo
&& E( and) Int a = 3, b = 2, c = 2;
(a == b) && (b == c) // false
|| Ou (or) Int a = 3, b = 2, c = 2;
(a == b) ||(b == c) // true
! Negação (not) bool a = true, b = false;
!a // false !b // true
Declarando 
Variáveis
• Evite começar com letra maiúscula e 
nunca use um numero para começar 
uma variável.
• Não utilize caracteres especiais, 
como : , “ , (, ).
• Você não pode usar palavras 
reservadas como variável.
• Não coloque sinais de pontuação na 
sua variável.
Criando variáveis
#include <stdio.h>
int main( void)
{
double primeiranota, segundanota, media;
primeiranota=0;
segundanota=0;
media=0;
return 0;
}
Entrada e Saída de 
Dados
#include <stdio.h>
int main( void)
{
int idade;
int anoAtual;
int anoNascimento;
printf("Digite sua idade: ");
scanf("%id",&idade);
printf("Digite o ano atual: ");
scanf("%id",&anoAtual);
anoNascimento=anoAtual-idade;
printf("Oi, você nasceu em %d\n",anoNascimento);
return 0;
}
Estrutura básica de 
um programa em C
/* programa que calcula o perímetro e a área de uma circunferência de raio */
#include <stdio.h> /* Inclui diretivas de entradas-saída*/
#include <math.h> /* inclui diretivas das funções matemáticas*/
int main( void)
{ int R;
float Perm, Area, PI;
PI = 3.14159;
printf("Entre com o valor do raio:");
scanf("%d", &R);
Perm = 2 * PI * R;
Area = PI * pow(R,2); 
printf("O perímetro da circunferência de raio %d é %.2f \n",R ,Perm);
printf("e a área e %.2f",Area);
return 0; 
}
Inclusão de biblioteca
Inclusão de variáveis
Impressão de mensagem
Digitação de variável
Entrada e Saída de 
Dados
Formatação
Sequencias de escape
#include <stdio.h>
int main ( void)
{
int a;
printf ("Digite um numero: ");
scanf ("%d", &a);
printf ("\nO numero digitado foi %d\n", a);
return (0);
}
Exemplo de programa
Saída de dados
Entrada de dados
Exemplo de programa
/*programa exemplo do uso da função printf Imprime com 6 casas dec.*/
#include<stdio.h>
int main( void)
{ int N=2;
char Letra ='a';
float X = 2.5f;
double Z=3.5 e-10;
printf("O primeiro valor impresso é uma constante decimal %d",15);
printf("O valor da primeira variável declarada e inicializada é %d",N);
printf("O valor da segunda variável declarada e inicializada é %c",Letra);
printf("O valor da primeira variável de ponto flutuante (prec. Simples) é %f",X);
printf("O valor da segunda variável de ponto flutuante (prec. Dupla) é %f",Z);
printf("O valor da segunda variável de ponto flutuante (prec. Dupla) é %.11f",Z);
printf("O valor da expressão que soma 4 ao valor de N é %d", N+4);
printf("As variáveis utilizadas (declaradas e inicializadas) foram N=%d, \Letra=%c, X=%f, Z=%.11f", N,Letra,X,Z);
return 0;
}
#include <stdio.h> /* inclui definições 
básicas p/ I/O */
#define CONST_EX 50 /* nomeação da 
constante 50 */
int main( void )
{
int vi; /* declaração das variáveis */
char vc;
float vx;
double vy;
vi = CONST_EX; /* atribuição de valores */
vc = 'm';
vx = -10.3f;
vy = 0.023;
printf("Exemplo de constante CONST_EX = %d 
\n",CONST_EX);
printf("Exemplo de variável int vi = %i \n", vi);
printf("Exemplo de variável char vc = %c \n", vc);
printf("Exemplo de variável float vx = %f \n", vx);
printf("Exemplo de variável double vy = %f \n", vy); /* ou %lf
*/
vi = 10;
printf("variável int (decimal) vi = %d \n",vi);
rintf("variável int (hexadecimal) vi = %x \n",vi);
printf("variável int (octal) vi = %o \n",vi);
}
Exemplo de programa
Exemplo de programa –
Printf com inteiros
#include <stdio.h>
main(void)
{
int vari = 2;
float varx = 2.4f;
printf("Exemplos : vari = %d, varx = %f \n", vari,varx);
printf("A porcentagem da população é %d %% \n",85);
}
• saída do programa
Exemplos : 
vari = 2, 
varx = 2.4
A porcentagem da população é 85 % 
Exemplode programa – Printf
com Ponto Flutuante
#include <stdio.h>
int main( void)
{
printf(“%4.2f\n”,3456.783f);
printf(“%3.2f\n”,3456.783f);
printf(“%3.1f\n”,3456.783f);
printf(“%10.3f\n”,3456.783f);
}
• saída do programa
3456 .78
3456 .78
3456 .8
3456 .783
▪IF
Estruturas de 
Decisão
▪Switch
Estruturas de 
Decisão em C
A linguagem C, tanto quanto qualquer outra linguagem, possui 
estrutura de decisão.
Podem ser do tipo:
• if 
• if–else
• if–elseif-else
• Vamos ver um exemplo da última, que é a mais comum.
Estrutura de Decisão 
if – elseif - else
int result = 0; 
if (result == 0)
printf(“O valor da variável é zero."); 
else if( result == 1)
printf(" O valor da variável é um.");
e assim por diante, criando uma estrutura de seleção(decisão) encadeada.
Estrutura de Decisão 
if – elseif - else
Exemplo de IF
#include<conio.h>
#include<stdio.h>
int main(void)
{
int n1, n2, media=0;
printf("Digite a Nota 1: ");
scanf("%d", &n1);
printf("Digite a Nota 2: ");
scanf("%d", &n2);
media = (n1 + n2)/2;
if (media >= 7) {
printf("Aluno Aprovado");
}
else {
printf("Aluno Reprovado");
}
getch();
return(0);
}
As chaves não são obrigatórios quando 
apresentam apenas um comando
Exemplo de IF – else - if
#include<conio.h>
#include<stdio.h>
int main(void)
{
int n1, n2, media=0;
printf("Digite a Nota 1: ");
scanf("%d", &n1);
printf("Digite a Nota 2: ");
scanf("%d", &n2);
media = (n1 + n2)/2;
if (media >= 7){
printf("Aluno Aprovado");
}
else if (media < 4) { 
printf("Aluno Reprovado"); }
else { 
printf("Na Final"); }
getch();
return(0);
}
Exemplo de IF – else - if
#include<conio.h>
#include<stdio.h>
int main(void)
{
int n1, n2, media=0;
printf("Digite a Nota 1: ");
scanf("%d", &n1);
printf("Digite a Nota 2: ");
scanf("%d", &n2);
media = (n1 + n2)/2;
if (media >= 7){
printf("Aluno Aprovado");
}
else if (media < 4) { 
printf("Aluno Reprovado"); }
else { 
printf("Na Final"); }
getch();
return(0);
}
Estruturas Switch
•SWITCH é uma declaração de múltipla escolha, diferente do if que caso 
tenha uma lista de escolha a ser montada não fica elegante e 
dependendo a extensão do programa fica difícil a manutenção.
Switch (variável)
{
Case constante1:
Comandos;
Break;
Case constante2:
Comandos;
Break;
Case constante3:
Comandos;
Break;
default
comandos;
}
Exemplo de Switch
#include <iostream>
using namespace std;
int main(void)
{
char grade;
cout << "Digite a sua grade (A to F): ";
cin >> grade;
switch (grade) {
case 'A':
cout << "Sua idade está entre 90 - 100"<< endl;
break; 
case 'B':
cout << "Sua idade está entre 80 - 89"<< endl;
break;
case 'C':
cout << "Sua idade está entre 70 - 79"<< endl;
break;
case 'D':
cout << "Sua idade está entre 60 - 69"<< endl;
break;
default: 
cout << "Sua idade é menor que 60" << endl; }
return 0; }
O objeto cout representa o stream de saída no 
C++. Este stream é uma espécie de sequencia 
(fluxo) de dados a serem impressos na tela.
Para realizar a impressão, usa-se o "operador 
de inserção" que "insere" dados dentro 
do stream.
O objeto cin representa o stream de entrada no 
C++. Ele realiza a leitura de um sequencia de 
dados, sem espaços e sem tabulações, vindas 
do teclado.
Para coletar estes dados armazenados, usa-se o 
"operador de extração" que "extrai" 
dados do stream.
Exemplo de Switch
#include<conio.h>
#include<stdio.h>
int main() {
int opcao, valor;
printf("Converter: \n");
printf("1: Decimal para Hexadecimal.\n");
printf("2: Hexadecimal para Decimal.\n");
printf("\nInforme sua Opcao.\n");
scanf("%d", &opcao);
switch(opcao) {
case 1:
printf("\nInforme o valor em decimal: ");
scanf("%d", &valor);
printf("%d em hexadecimal e: %x", valor, valor);
break;
case 2:
printf("\nInforme o valor em hexadecimal: ");
scanf("%x", &valor);
printf("%x em decimal e: %d", valor, valor);
break;
default:
printf("\nOpcoes invalidas. tente outra vez."); } 
getch();
}
▪Do While
Estruturas de 
Repetição
▪FOR ▪FOR
Estrutura de 
Repetição
Estrutura de 
Repetição
Estrutura de repetição
For
Laço FOR
Laço utilizado geralmente quando existe um termino definido, 
sempre vai tem um fim definido para esse laço implementado no 
inicio.
Sintaxe
For (variável de inicialização; condição; incremento)
Variável de inicialização: comando de atribuição que inicia uma 
variável que faz o controle do laço.
Condição: expressão usada que determinará o final do laço.
Incremento: define a variável de controle e muda a cada passada 
no laço.
Estrutura de repetição
For
/*programa que imprime o quadrado e o cubo de
conjunto de 100 valores inteiros */
#include<math.h>
#include<stdio.h>
Int main ( void) {
int C, I;
for (C=1;C<=100;C=C+1) { /*aqui NÃO tem ponto-e-vírgula */
printf(“Entre com um valor inteiro: “);
scanf(“%d”,&I);
printf(“%d | %f | %f \n”, I, pow(I,2), pow(I,3) );
}
} 
Estrutura de repetição
For
#include<conio.h>
#include<stdio.h>
int main()
{
int i;
for (i=0; i<10; i++)
{
printf("%d\n",i);
}
getch();
}
getch() espera que o usuário 
digite uma tecla e retorna este 
caractere. Você pode estar 
estranhando o fato 
de getch() retornar um inteiro, 
mas não há problema pois este 
inteiro é tal que quando 
igualado a um char a conversão 
é feita corretamente. A 
função getche() funciona 
exatamente como getch(). A 
diferença é que getche() gera 
um "echo" na tela antes de 
retornar a tecla.
Estrutura de repetição
For
Estrutura de repetição
For
#include<conio.h>
#include<stdio.h>
int main( void)
{
int i,a,soma;
soma=0;
for (i=0; i<5; i++)
{
printf("Digite um numero:");
scanf("%d",&a);
soma=soma+a;
}
printf("\n A soma é: %d",soma);
getch();
}
Se a tecla pressionada for um 
caractere especial estas 
funções retornam zero. Neste 
caso você deve usar as funções 
novamente para pegar o código 
da tecla estendida pressionada.
#include<conio.h>
#include<stdio.h>
int main( void)
{
int i;
float a,soma,media;
soma=0;
for (i=0; i<5; i++)
{
printf("Digite a altura da pessoa: %d\n",i+1);
scanf("%f",&a);
soma=soma+a;
}
printf("\n A soma é: %.2f",soma/5);
getch();
}
Estrutura de repetição
For
Estrutura de repetição
While
Estrutura de repetição
While
#include<conio.h>
#include<stdio.h> 
int main() {
int continua, contador;continua = 's';
contador = 0;
while (continua == 's') // enquanto for igual a 's'
{ // comandos a serem repetidos
printf("Repentindo....\n");
contador = contador + 1;
printf("Tecle 's' se deseja continuar\n");
continua = getch();
}
if (contador == 0)
printf("O bloco NAO foi repetido.");
else printf("O bloco foi repetido %d vezes", contador);
}
#include<conio.h>
#include<stdio.h>
int main()
{
int i=0;
do
{
i++;
printf("%d\n", i);
} while(i <= 10);
getch();
}
Estrutura de repetição
While
O getch() como também o 
getche() retorna a tecla 
digitada, muito usado em 
menus com 
switch.(Diferença entre os 
dois é que o getch() não 
mostra a tecla que digitou 
na tela, já o getche() 
mostra na tela qual foi a 
tecla digitada)
#include <stdio.h> main() {
char produto[21];
int i , qtdmaisde50, qtdmenosde50 ; float preco;
qtdmaisde50 = 0;
qtdmenosde50 = 0;
for (int i =1; i <= 5; i++){
printf(" Informe um nome do produto e a seguir tecle ENTER\n"); 
scanf ( "%21[^\n]", produto);
printf(" Agora informe o preco do produto a seguir tecle ENTER\n"); 
scanf ( "%f", &preco);
if (preco > 50) {
qtdmaisde50 = qtdmaisde50 + 1;} 
else {
qtdmenosde50 = qtdmenosde50 +1; } getchar();
}
printf(" a quantidade de produtos que custam mais de 50 reais : %d\n", qtdmaisde50); 
printf(" a quantidade de produtos que custam menos de 50 reais : %d\n", qtdmenosde50);
}
Estrutura de repetição
While
▪Function
Sub Rotinas
▪Procedure
Funções e 
procedimentos
Procedimento: é um conjunto de instruções 
que desviam o fluxo de sequência de um 
programa, podendo ou não receberparâmetros, porém, não retorna nenhum 
valor.
Função: é um conjunto de instruções que 
desviam o fluxo de execução de um programa, 
podendo ou não receber parâmetros, porém, 
deve, obrigatoriamente, retornar um valor.
Uma função
Um procedimento
Chamada de 
Função e de 
procedimento
PRÓXIMOS
PASSOS
Equações Lineares
Sistemas Lineares
Métodos de solução de 
equações não lineares I
Métodos de solução de 
equações não lineares II
OBRIGADO
Adilson da Silva adilson.silva@sereducacional.comMestre

Outros materiais