SlideShare uma empresa Scribd logo
Programação Estruturada II
CÓDIGO FONTE DA AULA 02
MODULARIZAÇÃO E FUNÇÕES – 2015.1
Prof. Thomás da Costa
thomasdacosta@gmail.com
CÓDIGO FONTE DA AULA 02 – MODULARIZAÇÃO E FUNÇÕES – 2015.1
Slide 12 e 23
#include <iostream>
using namespace std;
double somar(double x, double y);
double subtrair(double x, double y);
double multiplicar(double x, double y);
double dividir(double x, double y);
int main()
{
double x, y;
cout << "Digite os valores para somar:n";
cin >> x >> y;
cout << somar(x, y);
cout << "Digite os valores para subtrair:n";
cin >> x >> y;
cout << subtrair(x, y);
cout << "Digite os valores para multiplicar:n";
cin >> x >> y;
cout << multiplicar(x, y);
cout << "Digite os valores para dividir:n";
cin >> x >> y;
cout << dividir(x, y);
}
double somar(double x, double y)
{
double resultado = x + y;
return resultado;
}
double subtrair(double x, double y)
{
double resultado = x - y;
return resultado;
}
double multiplicar(double x, double y)
{
double resultado = x * y;
return resultado;
}
double dividir(double x, double y)
{
double resultado = x / y;
return resultado;
}
Slide 15
#include <iostream>
using namespace std;
int par_ou_impar(int numero);
int main()
{
int numero, resultado;
cout << "Digite um número:n";
cin >> numero;
resultado = par_ou_impar(numero);
if (resultado == 0)
cout << "Par";
else
cout << "Impar";
}
int par_ou_impar(int numero)
{
int valor = numero % 2;
return valor;
}
Slide 16
#include <iostream>
using namespace std;
void imprime_idade(int idade);
int main()
{
int idade;
cout << "Digite a sua idade:n";
cin >> idade;
imprime_idade(idade);
}
void imprime_idade(int idade)
{
cout << "Sua idade é: " << idade;
}
Slide 17
#include <iostream>
using namespace std;
void dividir(int x, int y);
int main()
{
int x, y;
cout << "Digite os valores para dividir:n";
cin >> x >> y;
dividir(x, y);
}
void dividir(int x, int y)
{
if (y == 0)
{
cout << "Não dividirás por zero";
return;
}
cout << "Valor da Divisão:" << x / y;
}
Slide 20
#include <iostream>
using namespace std;
void imprimir();
int main()
{
imprimir();
}
void imprimir()
{
char valor[10];
cout << "Digite algo:n";
gets(valor);
cout << valor;
}
Slide 21
#include <iostream>
using namespace std;
int raiz_quadrada(int x);
int main()
{
int x;
cout << "Digite um numero:n";
cin >> x;
cout << "Raiz quadrada de " << x << " é " << raiz_quadrada(x);
}
int raiz_quadrada(int x)
{
return x * x;
}
Slide 22
#include <iostream>
using namespace std;
const double VALOR_DOLAR = 2.7;
void converte_real_dolar(double real);
int main()
{
double valor_real;
cout << "Valor em reais:";
cin >> valor_real;
converte_real_dolar(valor_real);
}
void converte_real_dolar(double real)
{
if (real < 0)
{
cout << "O valor não pode ser menor que zero";
return;
}
cout << "Valor convertido: " << real * VALOR_DOLAR;
}
Slide 25
#include <iostream>
using namespace std;
int global = 0;
void escopo(int x);
int main()
{
int a = 1;
{
int b = 1;
cout << "Escopo mais interno: " << b << endl;
}
escopo(100);
cout << "Escopo local: " << a << endl;
}
void escopo(int x)
{
cout << "Escopo local: " << x << endl;
cout << "Escopo global: " << global << endl;
}
Slide 27
#include <iostream>
using namespace std;
void troca(int a, int b);
int main()
{
int a = 10;
int b = 20;
troca(a, b);
cout << "Valor de A e B não foi alterado:" << a << b << endl;
}
void troca(int a, int b)
{
a = b;
b = a + 100;
cout << "Valor de A e B: " << a << b << endl;
}
Slide 29
#include <iostream>
using namespace std;
void troca(int &a, int &b);
int main()
{
int a = 10;
int b = 20;
cout << "Valor de A e B original:" << a << "-" << b << endl;
troca(a, b);
cout << "Valor de A e B FOI alterado:" << a << "-" << b << endl;
}
void troca(int &a, int &b)
{
int temp;
temp = b;
b = a;
a = temp;
}
Slide 30
#include <iostream>
#include <string.h>
using namespace std;
int validar_senha(char *senha);
int main()
{
char senha[10];
cout << "Digite a senha:" << endl;
gets(senha);
validar_senha(senha);
}
int validar_senha(char *senha)
{
if (strcmp(senha, "entrar123") == 0)
{
cout << "Senha OK";
return 0;
} else {
cout << "Senha inválida";
return 1;
}
}
Slide 31
#include <iostream>
#include <string.h>
using namespace std;
void imprime_vetor(int *valores);
int main()
{
int valores[10] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29};
imprime_vetor(valores);
}
void imprime_vetor(int *valores)
{
for (int i=0;i<=9;i++)
{
cout << "valores[" << i << "] :" << valores[i] << endl;
}
}
Slide 33 e 34
#include <iostream>
#include <string.h>
using namespace std;
void imprime_vetor(char *valores);
void imprime_vetor(int *valores);
void imprime_vetor(int *valores, int tamanho);
int main()
{
int valores[10] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29};
char nome[10] = {'a','n','h','a','n','g','u','e','r','a'};
imprime_vetor(nome);
imprime_vetor(valores);
imprime_vetor(valores, 10);
}
void imprime_vetor(char *valores)
{
cout << "void imprime_vetor(char *valores)" << endl;
for (int i=0;i<=9;i++)
{
cout << "valores[" << i << "] :" << valores[i] << endl;
}
}
void imprime_vetor(int *valores)
{
cout << "void imprime_vetor(int *valores)" << endl;
for (int i=0;i<=9;i++)
{
cout << "valores[" << i << "] :" << valores[i] << endl;
}
}
void imprime_vetor(int *valores, int tamanho)
{
cout << "void imprime_vetor(int *valores, int tamanho)" << endl;
for (int i=0;i<tamanho;i++)
{
cout << "valores[" << i << "] :" << valores[i] << endl;
}
}
Slide 35
#include <iostream>
using namespace std;
double media(double b1 = 0, double b2 = 0);
int main()
{
cout << "Media Default:" << media() << endl;
cout << "Media Aluno:" << media(6.5, 6.5) << endl;
}
double media(double b1, double b2)
{
return (b1 + b2) / 2;
}
Slide 39
namespace matematica
{
double somar(double x, double y);
double subtrair(double x, double y);
double multiplicar(double x, double y);
double dividir(double x, double y);
}
Slide 40
#include <iostream>
#include "matematica.h"
using namespace std;
namespace matematica
{
double somar(double x, double y)
{
return x + y;
}
double subtrair(double x, double y)
{
return x - y;
}
double multiplicar(double x, double y)
{
return x * y;
}
double dividir(double x, double y)
{
return x / y;
}
}
Slide 41
#include <iostream>
#include "matematica.h"
using namespace matematica;
using namespace std;
int main() {
cout << "Somar:" << somar(2,2) << endl;
cout << "Subtrair:" << subtrair(2,2) << endl;
cout << "Multiplicar:" << multiplicar(2,2) << endl;
cout << "Dividir:" << dividir(2,2) << endl;
}

Mais conteúdo relacionado

Mais procurados

DBA | Tabelas de teste
DBA | Tabelas de testeDBA | Tabelas de teste
DBA | Tabelas de teste
Carlos Pampulim Caldeira
 
Propriedade da Esperança Matemática
Propriedade da Esperança MatemáticaPropriedade da Esperança Matemática
Propriedade da Esperança Matemática
Anselmo Alves de Sousa
 
Multiplicação estratégia 1
Multiplicação estratégia 1Multiplicação estratégia 1
Multiplicação estratégia 1
Nelson Pires
 
Golang e data science oficial v1
Golang e data science   oficial v1Golang e data science   oficial v1
Golang e data science oficial v1
Rodrigo Pinheiro
 
Tabela Hash com Lista Encadeada
Tabela Hash com Lista EncadeadaTabela Hash com Lista Encadeada
Tabela Hash com Lista Encadeada
Elaine Cecília Gatto
 
Graficodafuncaoquadratica
GraficodafuncaoquadraticaGraficodafuncaoquadratica
Graficodafuncaoquadratica
con_seguir
 
1 serie exercicios_logica
1 serie exercicios_logica1 serie exercicios_logica
1 serie exercicios_logica
Rodrigo Silveira
 
App scala
App scalaApp scala
App scala
Agnaldo Oliveira
 
apostila C++
apostila C++apostila C++
apostila C++
Augusto Passos
 
Bubble Sort Classe Java
Bubble Sort Classe JavaBubble Sort Classe Java
Bubble Sort Classe Java
Elaine Cecília Gatto
 
Função quadrática
Função quadráticaFunção quadrática
Função quadrática
rosilemes
 
02 função quadrática - parte II (raízes)
02   função quadrática - parte II (raízes)02   função quadrática - parte II (raízes)
02 função quadrática - parte II (raízes)
Angelo Moreira Dos Reis
 
Design OO
Design OODesign OO
Explorando gráficos de funções do 1º grau no geogebra
Explorando gráficos de funções do 1º grau no geogebraExplorando gráficos de funções do 1º grau no geogebra
Explorando gráficos de funções do 1º grau no geogebra
Ricardo Almeida
 
Problema N-Rainhas
Problema N-RainhasProblema N-Rainhas
Problema N-Rainhas
Kérisson da Cunha
 
MRO predict
MRO predictMRO predict
Produto escalar
Produto escalarProduto escalar
Função do 2°grau
Função do 2°grauFunção do 2°grau
Função do 2°grau
LSKY
 
Passo a passo com o vaca5
Passo a passo com o vaca5Passo a passo com o vaca5
Passo a passo com o vaca5
Hamilton Lima
 
ApresentaçãO1
ApresentaçãO1ApresentaçãO1
ApresentaçãO1
Marina Vassoler
 

Mais procurados (20)

DBA | Tabelas de teste
DBA | Tabelas de testeDBA | Tabelas de teste
DBA | Tabelas de teste
 
Propriedade da Esperança Matemática
Propriedade da Esperança MatemáticaPropriedade da Esperança Matemática
Propriedade da Esperança Matemática
 
Multiplicação estratégia 1
Multiplicação estratégia 1Multiplicação estratégia 1
Multiplicação estratégia 1
 
Golang e data science oficial v1
Golang e data science   oficial v1Golang e data science   oficial v1
Golang e data science oficial v1
 
Tabela Hash com Lista Encadeada
Tabela Hash com Lista EncadeadaTabela Hash com Lista Encadeada
Tabela Hash com Lista Encadeada
 
Graficodafuncaoquadratica
GraficodafuncaoquadraticaGraficodafuncaoquadratica
Graficodafuncaoquadratica
 
1 serie exercicios_logica
1 serie exercicios_logica1 serie exercicios_logica
1 serie exercicios_logica
 
App scala
App scalaApp scala
App scala
 
apostila C++
apostila C++apostila C++
apostila C++
 
Bubble Sort Classe Java
Bubble Sort Classe JavaBubble Sort Classe Java
Bubble Sort Classe Java
 
Função quadrática
Função quadráticaFunção quadrática
Função quadrática
 
02 função quadrática - parte II (raízes)
02   função quadrática - parte II (raízes)02   função quadrática - parte II (raízes)
02 função quadrática - parte II (raízes)
 
Design OO
Design OODesign OO
Design OO
 
Explorando gráficos de funções do 1º grau no geogebra
Explorando gráficos de funções do 1º grau no geogebraExplorando gráficos de funções do 1º grau no geogebra
Explorando gráficos de funções do 1º grau no geogebra
 
Problema N-Rainhas
Problema N-RainhasProblema N-Rainhas
Problema N-Rainhas
 
MRO predict
MRO predictMRO predict
MRO predict
 
Produto escalar
Produto escalarProduto escalar
Produto escalar
 
Função do 2°grau
Função do 2°grauFunção do 2°grau
Função do 2°grau
 
Passo a passo com o vaca5
Passo a passo com o vaca5Passo a passo com o vaca5
Passo a passo com o vaca5
 
ApresentaçãO1
ApresentaçãO1ApresentaçãO1
ApresentaçãO1
 

Semelhante a Programação Estruturada 2 - Aula 02 - Código Fonte

113856859 exercicios-vetor-e-matriz
113856859 exercicios-vetor-e-matriz113856859 exercicios-vetor-e-matriz
113856859 exercicios-vetor-e-matriz
Daniel Natividade
 
Exercícios da Aula de LAB 01
Exercícios da Aula de LAB 01Exercícios da Aula de LAB 01
Exercícios da Aula de LAB 01
thomasdacosta
 
Sobrecarga operadores
Sobrecarga operadoresSobrecarga operadores
Sobrecarga operadores
Itália Camolesi
 
Programação Estruturada 2 - Aula 01 - Código Fonte
Programação Estruturada 2 - Aula 01 - Código FonteProgramação Estruturada 2 - Aula 01 - Código Fonte
Programação Estruturada 2 - Aula 01 - Código Fonte
thomasdacosta
 
Exercício da lógica (16 ao 25)
Exercício da lógica (16 ao 25)Exercício da lógica (16 ao 25)
Exercício da lógica (16 ao 25)
gabimonteiro1455555
 
Programação Estruturada 2 - Aula 02
Programação Estruturada 2 - Aula 02Programação Estruturada 2 - Aula 02
Programação Estruturada 2 - Aula 02
thomasdacosta
 
Linguagem C - Vetores, Matrizes e Funções
Linguagem C - Vetores, Matrizes e FunçõesLinguagem C - Vetores, Matrizes e Funções
Linguagem C - Vetores, Matrizes e Funções
Elaine Cecília Gatto
 
Clean code
Clean codeClean code
Clean code
Marcos Brizeno
 
Conhecendo ou relembrando C
Conhecendo ou relembrando CConhecendo ou relembrando C
Conhecendo ou relembrando C
Vinícius Hax
 
Programação Funcional (para humanos)
Programação Funcional (para humanos)Programação Funcional (para humanos)
Programação Funcional (para humanos)
Pedro Castilho
 
Bread board
Bread boardBread board
Bread board
André Walker
 
Função malloc
Função mallocFunção malloc
04_Introducao_JavaScript.pdf
04_Introducao_JavaScript.pdf04_Introducao_JavaScript.pdf
04_Introducao_JavaScript.pdf
DaniloPereira341965
 
ORM: Sendo produtivo com NHibernate
ORM: Sendo produtivo com NHibernateORM: Sendo produtivo com NHibernate
ORM: Sendo produtivo com NHibernate
Juliano Oliveira
 
Conexão Java 2012 - Orientação a Objetos das Galáxias
Conexão Java 2012 - Orientação a Objetos das GaláxiasConexão Java 2012 - Orientação a Objetos das Galáxias
Conexão Java 2012 - Orientação a Objetos das Galáxias
Maurício Aniche
 
Introdução ao MongoDB
Introdução ao MongoDBIntrodução ao MongoDB
Introdução ao MongoDB
Rodrigo Hjort
 
VetoresMatrizes.pdf
VetoresMatrizes.pdfVetoresMatrizes.pdf
VetoresMatrizes.pdf
DavidPaulino21
 
Algoritmos e Estrutura de Dados - Aula 03
Algoritmos e Estrutura de Dados - Aula 03Algoritmos e Estrutura de Dados - Aula 03
Algoritmos e Estrutura de Dados - Aula 03
thomasdacosta
 
MIPS 32 BITS
MIPS 32 BITSMIPS 32 BITS
MIPS 32 BITS
Elaine Cecília Gatto
 
8 ponteiros, ponteiros e vetores e alocacao dinamica de memoria
8   ponteiros,  ponteiros e vetores e alocacao dinamica de memoria8   ponteiros,  ponteiros e vetores e alocacao dinamica de memoria
8 ponteiros, ponteiros e vetores e alocacao dinamica de memoria
Ricardo Bolanho
 

Semelhante a Programação Estruturada 2 - Aula 02 - Código Fonte (20)

113856859 exercicios-vetor-e-matriz
113856859 exercicios-vetor-e-matriz113856859 exercicios-vetor-e-matriz
113856859 exercicios-vetor-e-matriz
 
Exercícios da Aula de LAB 01
Exercícios da Aula de LAB 01Exercícios da Aula de LAB 01
Exercícios da Aula de LAB 01
 
Sobrecarga operadores
Sobrecarga operadoresSobrecarga operadores
Sobrecarga operadores
 
Programação Estruturada 2 - Aula 01 - Código Fonte
Programação Estruturada 2 - Aula 01 - Código FonteProgramação Estruturada 2 - Aula 01 - Código Fonte
Programação Estruturada 2 - Aula 01 - Código Fonte
 
Exercício da lógica (16 ao 25)
Exercício da lógica (16 ao 25)Exercício da lógica (16 ao 25)
Exercício da lógica (16 ao 25)
 
Programação Estruturada 2 - Aula 02
Programação Estruturada 2 - Aula 02Programação Estruturada 2 - Aula 02
Programação Estruturada 2 - Aula 02
 
Linguagem C - Vetores, Matrizes e Funções
Linguagem C - Vetores, Matrizes e FunçõesLinguagem C - Vetores, Matrizes e Funções
Linguagem C - Vetores, Matrizes e Funções
 
Clean code
Clean codeClean code
Clean code
 
Conhecendo ou relembrando C
Conhecendo ou relembrando CConhecendo ou relembrando C
Conhecendo ou relembrando C
 
Programação Funcional (para humanos)
Programação Funcional (para humanos)Programação Funcional (para humanos)
Programação Funcional (para humanos)
 
Bread board
Bread boardBread board
Bread board
 
Função malloc
Função mallocFunção malloc
Função malloc
 
04_Introducao_JavaScript.pdf
04_Introducao_JavaScript.pdf04_Introducao_JavaScript.pdf
04_Introducao_JavaScript.pdf
 
ORM: Sendo produtivo com NHibernate
ORM: Sendo produtivo com NHibernateORM: Sendo produtivo com NHibernate
ORM: Sendo produtivo com NHibernate
 
Conexão Java 2012 - Orientação a Objetos das Galáxias
Conexão Java 2012 - Orientação a Objetos das GaláxiasConexão Java 2012 - Orientação a Objetos das Galáxias
Conexão Java 2012 - Orientação a Objetos das Galáxias
 
Introdução ao MongoDB
Introdução ao MongoDBIntrodução ao MongoDB
Introdução ao MongoDB
 
VetoresMatrizes.pdf
VetoresMatrizes.pdfVetoresMatrizes.pdf
VetoresMatrizes.pdf
 
Algoritmos e Estrutura de Dados - Aula 03
Algoritmos e Estrutura de Dados - Aula 03Algoritmos e Estrutura de Dados - Aula 03
Algoritmos e Estrutura de Dados - Aula 03
 
MIPS 32 BITS
MIPS 32 BITSMIPS 32 BITS
MIPS 32 BITS
 
8 ponteiros, ponteiros e vetores e alocacao dinamica de memoria
8   ponteiros,  ponteiros e vetores e alocacao dinamica de memoria8   ponteiros,  ponteiros e vetores e alocacao dinamica de memoria
8 ponteiros, ponteiros e vetores e alocacao dinamica de memoria
 

Mais de thomasdacosta

Azure Functions e Java: Do Desenvolvimento a Produção
Azure Functions e Java: Do Desenvolvimento a ProduçãoAzure Functions e Java: Do Desenvolvimento a Produção
Azure Functions e Java: Do Desenvolvimento a Produção
thomasdacosta
 
Programação de Sistemas Distribuídos - Aula 03
Programação de Sistemas Distribuídos - Aula 03Programação de Sistemas Distribuídos - Aula 03
Programação de Sistemas Distribuídos - Aula 03
thomasdacosta
 
Programação de Sistemas Distribuídos - Aula 02
Programação de Sistemas Distribuídos - Aula 02Programação de Sistemas Distribuídos - Aula 02
Programação de Sistemas Distribuídos - Aula 02
thomasdacosta
 
Programação de Sistemas Distribuídos - Aula 01
Programação de Sistemas Distribuídos - Aula 01Programação de Sistemas Distribuídos - Aula 01
Programação de Sistemas Distribuídos - Aula 01
thomasdacosta
 
Organização de Computadores - Aula 02
Organização de Computadores - Aula 02Organização de Computadores - Aula 02
Organização de Computadores - Aula 02
thomasdacosta
 
Organização de Computadores - Aula 03
Organização de Computadores - Aula 03Organização de Computadores - Aula 03
Organização de Computadores - Aula 03
thomasdacosta
 
Organização de Computadores - Aula 01
Organização de Computadores - Aula 01Organização de Computadores - Aula 01
Organização de Computadores - Aula 01
thomasdacosta
 
Redes de Computadores - Exercícios 06
Redes de Computadores - Exercícios 06Redes de Computadores - Exercícios 06
Redes de Computadores - Exercícios 06
thomasdacosta
 
Redes de Computadores - Exercícios 05
Redes de Computadores - Exercícios 05Redes de Computadores - Exercícios 05
Redes de Computadores - Exercícios 05
thomasdacosta
 
Programação Concorrente - Curso Completo
Programação Concorrente - Curso CompletoProgramação Concorrente - Curso Completo
Programação Concorrente - Curso Completo
thomasdacosta
 
Programação Concorrente - Aula 07
Programação Concorrente - Aula 07Programação Concorrente - Aula 07
Programação Concorrente - Aula 07
thomasdacosta
 
Programação Concorrente - Aula 06
Programação Concorrente - Aula 06Programação Concorrente - Aula 06
Programação Concorrente - Aula 06
thomasdacosta
 
Redes de Computadores - Exercícios 04
Redes de Computadores - Exercícios 04Redes de Computadores - Exercícios 04
Redes de Computadores - Exercícios 04
thomasdacosta
 
Redes de Computadores - Aula 05
Redes de Computadores - Aula 05Redes de Computadores - Aula 05
Redes de Computadores - Aula 05
thomasdacosta
 
Programação Concorrente - Aula 05
Programação Concorrente - Aula 05Programação Concorrente - Aula 05
Programação Concorrente - Aula 05
thomasdacosta
 
Linguagem de Programação Java
Linguagem de Programação JavaLinguagem de Programação Java
Linguagem de Programação Java
thomasdacosta
 
Programação Concorrente - Aula 04
Programação Concorrente - Aula 04Programação Concorrente - Aula 04
Programação Concorrente - Aula 04
thomasdacosta
 
Redes de Computadores - Exercícios 03
Redes de Computadores - Exercícios 03Redes de Computadores - Exercícios 03
Redes de Computadores - Exercícios 03
thomasdacosta
 
Redes de Computadores - Aula 04
Redes de Computadores - Aula 04Redes de Computadores - Aula 04
Redes de Computadores - Aula 04
thomasdacosta
 
Algoritmos e Estrutura de Dados - Aula 05
Algoritmos e Estrutura de Dados - Aula 05Algoritmos e Estrutura de Dados - Aula 05
Algoritmos e Estrutura de Dados - Aula 05
thomasdacosta
 

Mais de thomasdacosta (20)

Azure Functions e Java: Do Desenvolvimento a Produção
Azure Functions e Java: Do Desenvolvimento a ProduçãoAzure Functions e Java: Do Desenvolvimento a Produção
Azure Functions e Java: Do Desenvolvimento a Produção
 
Programação de Sistemas Distribuídos - Aula 03
Programação de Sistemas Distribuídos - Aula 03Programação de Sistemas Distribuídos - Aula 03
Programação de Sistemas Distribuídos - Aula 03
 
Programação de Sistemas Distribuídos - Aula 02
Programação de Sistemas Distribuídos - Aula 02Programação de Sistemas Distribuídos - Aula 02
Programação de Sistemas Distribuídos - Aula 02
 
Programação de Sistemas Distribuídos - Aula 01
Programação de Sistemas Distribuídos - Aula 01Programação de Sistemas Distribuídos - Aula 01
Programação de Sistemas Distribuídos - Aula 01
 
Organização de Computadores - Aula 02
Organização de Computadores - Aula 02Organização de Computadores - Aula 02
Organização de Computadores - Aula 02
 
Organização de Computadores - Aula 03
Organização de Computadores - Aula 03Organização de Computadores - Aula 03
Organização de Computadores - Aula 03
 
Organização de Computadores - Aula 01
Organização de Computadores - Aula 01Organização de Computadores - Aula 01
Organização de Computadores - Aula 01
 
Redes de Computadores - Exercícios 06
Redes de Computadores - Exercícios 06Redes de Computadores - Exercícios 06
Redes de Computadores - Exercícios 06
 
Redes de Computadores - Exercícios 05
Redes de Computadores - Exercícios 05Redes de Computadores - Exercícios 05
Redes de Computadores - Exercícios 05
 
Programação Concorrente - Curso Completo
Programação Concorrente - Curso CompletoProgramação Concorrente - Curso Completo
Programação Concorrente - Curso Completo
 
Programação Concorrente - Aula 07
Programação Concorrente - Aula 07Programação Concorrente - Aula 07
Programação Concorrente - Aula 07
 
Programação Concorrente - Aula 06
Programação Concorrente - Aula 06Programação Concorrente - Aula 06
Programação Concorrente - Aula 06
 
Redes de Computadores - Exercícios 04
Redes de Computadores - Exercícios 04Redes de Computadores - Exercícios 04
Redes de Computadores - Exercícios 04
 
Redes de Computadores - Aula 05
Redes de Computadores - Aula 05Redes de Computadores - Aula 05
Redes de Computadores - Aula 05
 
Programação Concorrente - Aula 05
Programação Concorrente - Aula 05Programação Concorrente - Aula 05
Programação Concorrente - Aula 05
 
Linguagem de Programação Java
Linguagem de Programação JavaLinguagem de Programação Java
Linguagem de Programação Java
 
Programação Concorrente - Aula 04
Programação Concorrente - Aula 04Programação Concorrente - Aula 04
Programação Concorrente - Aula 04
 
Redes de Computadores - Exercícios 03
Redes de Computadores - Exercícios 03Redes de Computadores - Exercícios 03
Redes de Computadores - Exercícios 03
 
Redes de Computadores - Aula 04
Redes de Computadores - Aula 04Redes de Computadores - Aula 04
Redes de Computadores - Aula 04
 
Algoritmos e Estrutura de Dados - Aula 05
Algoritmos e Estrutura de Dados - Aula 05Algoritmos e Estrutura de Dados - Aula 05
Algoritmos e Estrutura de Dados - Aula 05
 

Último

TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
Momento da Informática
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
Momento da Informática
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
Danilo Pinotti
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
WELITONNOGUEIRA3
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
TomasSousa7
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
joaovmp3
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
Faga1939
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
Momento da Informática
 

Último (8)

TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
 

Programação Estruturada 2 - Aula 02 - Código Fonte

  • 1. Programação Estruturada II CÓDIGO FONTE DA AULA 02 MODULARIZAÇÃO E FUNÇÕES – 2015.1 Prof. Thomás da Costa thomasdacosta@gmail.com
  • 2. CÓDIGO FONTE DA AULA 02 – MODULARIZAÇÃO E FUNÇÕES – 2015.1 Slide 12 e 23 #include <iostream> using namespace std; double somar(double x, double y); double subtrair(double x, double y); double multiplicar(double x, double y); double dividir(double x, double y); int main() { double x, y; cout << "Digite os valores para somar:n"; cin >> x >> y; cout << somar(x, y); cout << "Digite os valores para subtrair:n"; cin >> x >> y; cout << subtrair(x, y); cout << "Digite os valores para multiplicar:n"; cin >> x >> y; cout << multiplicar(x, y); cout << "Digite os valores para dividir:n"; cin >> x >> y; cout << dividir(x, y); } double somar(double x, double y) { double resultado = x + y; return resultado; } double subtrair(double x, double y) { double resultado = x - y; return resultado; } double multiplicar(double x, double y) { double resultado = x * y; return resultado; } double dividir(double x, double y) { double resultado = x / y; return resultado; } Slide 15 #include <iostream> using namespace std; int par_ou_impar(int numero);
  • 3. int main() { int numero, resultado; cout << "Digite um número:n"; cin >> numero; resultado = par_ou_impar(numero); if (resultado == 0) cout << "Par"; else cout << "Impar"; } int par_ou_impar(int numero) { int valor = numero % 2; return valor; } Slide 16 #include <iostream> using namespace std; void imprime_idade(int idade); int main() { int idade; cout << "Digite a sua idade:n"; cin >> idade; imprime_idade(idade); } void imprime_idade(int idade) { cout << "Sua idade é: " << idade; } Slide 17 #include <iostream> using namespace std; void dividir(int x, int y); int main() { int x, y; cout << "Digite os valores para dividir:n"; cin >> x >> y; dividir(x, y); } void dividir(int x, int y) { if (y == 0) { cout << "Não dividirás por zero"; return; } cout << "Valor da Divisão:" << x / y; }
  • 4. Slide 20 #include <iostream> using namespace std; void imprimir(); int main() { imprimir(); } void imprimir() { char valor[10]; cout << "Digite algo:n"; gets(valor); cout << valor; } Slide 21 #include <iostream> using namespace std; int raiz_quadrada(int x); int main() { int x; cout << "Digite um numero:n"; cin >> x; cout << "Raiz quadrada de " << x << " é " << raiz_quadrada(x); } int raiz_quadrada(int x) { return x * x; } Slide 22 #include <iostream> using namespace std; const double VALOR_DOLAR = 2.7; void converte_real_dolar(double real); int main() { double valor_real; cout << "Valor em reais:"; cin >> valor_real; converte_real_dolar(valor_real); } void converte_real_dolar(double real) { if (real < 0) {
  • 5. cout << "O valor não pode ser menor que zero"; return; } cout << "Valor convertido: " << real * VALOR_DOLAR; } Slide 25 #include <iostream> using namespace std; int global = 0; void escopo(int x); int main() { int a = 1; { int b = 1; cout << "Escopo mais interno: " << b << endl; } escopo(100); cout << "Escopo local: " << a << endl; } void escopo(int x) { cout << "Escopo local: " << x << endl; cout << "Escopo global: " << global << endl; } Slide 27 #include <iostream> using namespace std; void troca(int a, int b); int main() { int a = 10; int b = 20; troca(a, b); cout << "Valor de A e B não foi alterado:" << a << b << endl; } void troca(int a, int b) { a = b; b = a + 100; cout << "Valor de A e B: " << a << b << endl; } Slide 29 #include <iostream> using namespace std; void troca(int &a, int &b); int main() {
  • 6. int a = 10; int b = 20; cout << "Valor de A e B original:" << a << "-" << b << endl; troca(a, b); cout << "Valor de A e B FOI alterado:" << a << "-" << b << endl; } void troca(int &a, int &b) { int temp; temp = b; b = a; a = temp; } Slide 30 #include <iostream> #include <string.h> using namespace std; int validar_senha(char *senha); int main() { char senha[10]; cout << "Digite a senha:" << endl; gets(senha); validar_senha(senha); } int validar_senha(char *senha) { if (strcmp(senha, "entrar123") == 0) { cout << "Senha OK"; return 0; } else { cout << "Senha inválida"; return 1; } } Slide 31 #include <iostream> #include <string.h> using namespace std; void imprime_vetor(int *valores); int main() { int valores[10] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29}; imprime_vetor(valores); } void imprime_vetor(int *valores) { for (int i=0;i<=9;i++) { cout << "valores[" << i << "] :" << valores[i] << endl; } }
  • 7. Slide 33 e 34 #include <iostream> #include <string.h> using namespace std; void imprime_vetor(char *valores); void imprime_vetor(int *valores); void imprime_vetor(int *valores, int tamanho); int main() { int valores[10] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29}; char nome[10] = {'a','n','h','a','n','g','u','e','r','a'}; imprime_vetor(nome); imprime_vetor(valores); imprime_vetor(valores, 10); } void imprime_vetor(char *valores) { cout << "void imprime_vetor(char *valores)" << endl; for (int i=0;i<=9;i++) { cout << "valores[" << i << "] :" << valores[i] << endl; } } void imprime_vetor(int *valores) { cout << "void imprime_vetor(int *valores)" << endl; for (int i=0;i<=9;i++) { cout << "valores[" << i << "] :" << valores[i] << endl; } } void imprime_vetor(int *valores, int tamanho) { cout << "void imprime_vetor(int *valores, int tamanho)" << endl; for (int i=0;i<tamanho;i++) { cout << "valores[" << i << "] :" << valores[i] << endl; } } Slide 35 #include <iostream> using namespace std; double media(double b1 = 0, double b2 = 0); int main() { cout << "Media Default:" << media() << endl; cout << "Media Aluno:" << media(6.5, 6.5) << endl; } double media(double b1, double b2) { return (b1 + b2) / 2; }
  • 8. Slide 39 namespace matematica { double somar(double x, double y); double subtrair(double x, double y); double multiplicar(double x, double y); double dividir(double x, double y); } Slide 40 #include <iostream> #include "matematica.h" using namespace std; namespace matematica { double somar(double x, double y) { return x + y; } double subtrair(double x, double y) { return x - y; } double multiplicar(double x, double y) { return x * y; } double dividir(double x, double y) { return x / y; } } Slide 41 #include <iostream> #include "matematica.h" using namespace matematica; using namespace std; int main() { cout << "Somar:" << somar(2,2) << endl; cout << "Subtrair:" << subtrair(2,2) << endl; cout << "Multiplicar:" << multiplicar(2,2) << endl; cout << "Dividir:" << dividir(2,2) << endl; }