SlideShare uma empresa Scribd logo
GUIA PARA TRADUÇÃO DE ALGORITMO PARA LINGUAGENS C
e PASCAL
1 - INTRODUÇÃO
Este guia tem por objetivo ajudá-lo a entender como transpor (traduzir) algoritmos para programas em
uma linguagem de programação (no caso, a linguagem C e a linguagem Pascal) e aplicar todo o
conhecimento adquirido sobre criação de algoritmos e lógica de programação para criar programas
nessas linguagens de programação. O essencial neste ponto é que você já conheça as estruturas
básicas de criação de algoritmos (seqüencial, condicionais e repetição) e saiba criar algoritmos em
pseudocódigo usando elas.
Observe que você não deve usar a “tradução” de algoritmos como uma prática para a programação. O
objetivo aqui é ajudá-lo nos primeiros passos na programação em uma dessas linguagens. Após algum
tempo de prática e exercícios, você já conhecerá a maior parte das palavras reservadas da linguagem e
saberá como construir programas usando os manuais e guias de referência da mesma, visto que não é
obrigação do programador “decorar” todos os comandos das linguagens de programação. Use este
material sempre em conjunto com um livro, manual ou apostila de referência das linguagens.
2 – NOTAÇÃO UTILIZADA
Neste material, onde você encontrar algo entre < > significa que você deve substituir tudo (inclusive o < >
) pelo que que está indicado entre os sinais < >. Onde você encontrar algo entre [ ] indica que este
fragmento é opcional e pode ser omitido (inclusive o [ ] ).
3 – ESTRUTURAS GERAIS
Estrutura
Formato geral de um algoritmo:

Linguagem C

Pascal

Variaveis
<declaração de variáveis>
Inicio
<Blocos de comando>
FimAlgoritmo

<tipo> <nome da função>()
{
<declaração de variáveis>
<comandos>
}

Var
<declaração de variáveis>
Begin
<comandos>
End;

Exemplo:

Exemplo:

Exemplo:

Variaveis
a,b: inteiro
Inicio
Escreval(“Olá!”)
FimAlgoritmo
Caractere de final da linha de
comando
Comentários em bloco

int main()
{
int a,b;
Printf(“Olá!n”);
}
;

Var
a,b: integer
Begin
Writeln(‘Olá!’);
End;
;

/* comentário...
Comentário..
*/
// comentário
{
<comandos>
}

(* comentário...
comentário...
*)
// Comentário
Begin
<comandos>
End;

Comentários de uma linha
Bloco de comandos
OBS:
•
•
•

•

EM C, as strings vêm entre aspas duplas e os tipos caractere ficam entre aspas simples
Em Pascal, tanto as strings quanto os tipos caracteres ficam entre aspas simples
A linguagem C diferencia palavras em letra minúsculas de palavras com letras maiúsculas, ou
seja, ela é “case sensitive”. Portanto´:
o Devemos escrever todos os comandos em letras minúsculas, ou de forma idêntica a
como consta na documentação da linguagem
o A variável num e Num são variáveis diferentes
Já o Pascal não faz diferenciação de maiúscula e minúsculas
4 – TIPOS DE DADOS
Algoritmos
Inteiro

Linguagem C
Int
Modificadores: unsigned, long

Real

float
Variações: double, long Double

Caractere
String

char
char[n] // (vetor de caracteres)

Lógico (Booleano)

OBS: A linguagem C não tem o tipo
booleano. O valor inteiro zero é
considerado FALSO e qualquer valor
inteiro maior que zero é considerado
VERDADEIRO .

Pascal
Integer
Variações: Shortint, Smallint,
Longint, Int64, Word, Longword
real
Variações: Single, Extended,
comp, Currency
char
string
Variações:
ShortString,
AnsiString, WideString
boolean

5 – DECLARAÇÃO DE VARIÁVEIS
Algoritmos
As variáveis são declaradas na
seção “Var” e o tipo vem após a
lista de variáveis, separado por
“:” (dois pontos):

Linguagem C
As variáveis são declaradas
dentro e logo no início do bloco
de comandos e o tipo vem antes
da lista de variáveis, sem o “:” :

Pascal
As variáveis são declaradas na
seção Var e o tipo vem após a
lista de variáveis, separado por
“:” (dois pontos):

Variaveis
n1,n2: inteiro
Inicio
Escreva(“Digite n1: “)
Leia(n1)
Escreva(Digite n2: “)
Leia(n2)
FimAlgoritmo

Int main()
{
int n1,n2;

Var
n1, n2: integer
Begin
Write(‘Digite valor 1: ‘);
Readln(n1);
Write(‘Digite valor 2: ‘);
Readln(n2);
End;

printf(“Digite valor 1: “);
scanf(“%d”,&n1);
printf(“Digite valor 2: “);
scanf(“%d”,&n2);
}

6 – OPERADORES
OPERADORES ARITMÉTICOS
Algoritmos
- (inversão de sinal)
+ (valor positivo)
** (exponenciação)
* (multiplicação)
/ (divisão)
+ (adição)
- (subtração)

Linguagem C
+
Pow(<base>,<expoente>)
*
/
+
-

Pascal
+
^
*
/
+
-

OPERADORES RELACIONAIS
Algoritmos
=
<>
<
>
>=
<=

Linguagem C
==
!=
<
>
>=
<=

Pascal
=
<>
<
>
>=
<=
OPERADORES LÓGICOS
Algoritmos
OU
E
NÃO

Linguagem C
||
&&
!

INCREMENTO E DECREMENTO DE VARIÁVEL
Algoritmos
Linguagem C
x <- x +1
x++ ou x += 1
x <- x + N
x += N
x <- x - 1
x-- ou x -= 1
x <- x - N
x -= N

Pascal
OR
AND
NOT

Pascal
x:=x+1 ou inc(x)
x:=x+N
x:=x-1 ou dec(x)
X:=x - N

6 – VETORES, MATRIZES E REGISTROS
Algoritmos
Vetor[1..<tamanho>] de <tipo>
Vetor[1..<lin>,1..<col>] de <tipo>

Linguagem C
<tipo> <variável>[<tamanho>];
<tipo> <variável>[<lin>][<col>];

Pascal
array [1..<tamanho>] of <tipo>;
Array
[1..<lin>][1..<col>]
of
<tipo>;

7 – COMANDOS E ESTRUTURAS DE PROGRAMAÇÃO
Algoritmos

Linguagem C

Pascal

Escreva
Escreval
Leia

printf(“<string>”,<parâmetros>);
printf(“<string>n”,<parâmetros>);
scanf(<string de controle>,<lista de
argumentos>);
if (<condição>)
<bloco de comandos>
[else
<bloco de comandos>

write(<parâmetros>);
writeln(<parâmetros>);
Readln(<variável>);

switch (<variável>)
{
case <constante_1>:
<declaração_1>;
break;
case <constante_2>:
<declaração_2>;
break;
. . .
case <constante_n>:
<declaração_n>;
break;
default
<declaração_padrão>;
}
for(<expressão de
inicialização>;<condição>;<expressão
de incremento>)
<bloco de comandos>

Case <evariável> of
<ListaDeCaso1>: <comando1>;
<ListaDeCaso1>: <comando1>;
...
<ListaDeCasoN>: <comandoN>;
Else
<comando>;
End;

while(<condição>)
<bloco de comandos>

While <condição> do
<bloco de comandos>

do

Repeat
<bloco de comandos>
Until <expressão lógica>

Se <condição> Então
<comandos>
[Senão
<comandos>]
Fimse
Escolha <variável>
caso <val.constante 1>:
<bloco de comandos 1>
caso <val.constante 2>:
<bloco de comandos 2>
...
caso <val.constante n>:
<bloco de comandos n>
outrocaso
<bloco
de
comandos
alternativo>
FimEscolha

Para <variável> de <valor
inicial>
ate
<valor
final>
[passo
<incremento>] faca
<comandos>
fimpara
Enquanto
<expr.lógica>
faca
<bloco de comandos>
FimEnquanto
Repita
<bloco de comandos>
Ate <expressão lógica>

<bloco de comandos>
While(<condição>);

if <condição> then
<bloco de comandos>
Else
<bloco de comandos>

For
<variável>
:=
inicial> to / downto
final> do
<bloco de comandos>

<valor
<valor

Mais conteúdo relacionado

Mais procurados

Pseudocódigo Tabla Hash Abierta
Pseudocódigo Tabla Hash AbiertaPseudocódigo Tabla Hash Abierta
Pseudocódigo Tabla Hash Abierta
Diego Menéndez Díaz
 
Estructura de Datos: Pila
Estructura de Datos: PilaEstructura de Datos: Pila
Estructura de Datos: Pila
Emerson Garay
 
PL/SQL Introduction and Concepts
PL/SQL Introduction and Concepts PL/SQL Introduction and Concepts
PL/SQL Introduction and Concepts
Bharat Kalia
 
Pascal Registros
Pascal RegistrosPascal Registros
Pascal Registros
Regis Magalhães
 
Oracle Database Trigger
Oracle Database TriggerOracle Database Trigger
Oracle Database Trigger
Eryk Budi Pratama
 
MySQL JOIN & UNION
MySQL JOIN & UNIONMySQL JOIN & UNION
MySQL JOIN & UNION
Jamshid Hashimi
 
Python Data-Types
Python Data-TypesPython Data-Types
Python Data-Types
Akhil Kaushik
 
Pl sql-ch1
Pl sql-ch1Pl sql-ch1
Pl sql-ch1
Mukesh Tekwani
 
Erros, exceções e asserções
Erros, exceções e asserçõesErros, exceções e asserções
Erros, exceções e asserções
Denis L Presciliano
 
Exception handling in c programming
Exception handling in c programmingException handling in c programming
Exception handling in c programming
Raza Najam
 
Oracle PLSQL Step By Step Guide
Oracle PLSQL Step By Step GuideOracle PLSQL Step By Step Guide
Oracle PLSQL Step By Step Guide
Srinimf-Slides
 
Set methods in python
Set methods in pythonSet methods in python
Set methods in python
deepalishinkar1
 
Procedure and Functions in pl/sql
Procedure and Functions in pl/sqlProcedure and Functions in pl/sql
Procedure and Functions in pl/sql
Ñirmal Tatiwal
 
POO - Aula 10 - Polimorfismo
POO - Aula 10 - PolimorfismoPOO - Aula 10 - Polimorfismo
POO - Aula 10 - Polimorfismo
Felipe J. R. Vieira
 
Plsql
PlsqlPlsql
PHP 5.3 - Estruturas de Controle
PHP 5.3 - Estruturas de ControlePHP 5.3 - Estruturas de Controle
PHP 5.3 - Estruturas de Controle
George Mendonça
 
Tutorial oracle forms builder
Tutorial oracle forms builderTutorial oracle forms builder
Tutorial oracle forms builder
Valdinho Pereira
 
trigger dbms
trigger dbmstrigger dbms
trigger dbms
kuldeep100
 
10. aplicaciones de las pilas
10. aplicaciones de las pilas10. aplicaciones de las pilas
10. aplicaciones de las pilas
Andreita Enriquez
 
Python Programming Essentials - M8 - String Methods
Python Programming Essentials - M8 - String MethodsPython Programming Essentials - M8 - String Methods
Python Programming Essentials - M8 - String Methods
P3 InfoTech Solutions Pvt. Ltd.
 

Mais procurados (20)

Pseudocódigo Tabla Hash Abierta
Pseudocódigo Tabla Hash AbiertaPseudocódigo Tabla Hash Abierta
Pseudocódigo Tabla Hash Abierta
 
Estructura de Datos: Pila
Estructura de Datos: PilaEstructura de Datos: Pila
Estructura de Datos: Pila
 
PL/SQL Introduction and Concepts
PL/SQL Introduction and Concepts PL/SQL Introduction and Concepts
PL/SQL Introduction and Concepts
 
Pascal Registros
Pascal RegistrosPascal Registros
Pascal Registros
 
Oracle Database Trigger
Oracle Database TriggerOracle Database Trigger
Oracle Database Trigger
 
MySQL JOIN & UNION
MySQL JOIN & UNIONMySQL JOIN & UNION
MySQL JOIN & UNION
 
Python Data-Types
Python Data-TypesPython Data-Types
Python Data-Types
 
Pl sql-ch1
Pl sql-ch1Pl sql-ch1
Pl sql-ch1
 
Erros, exceções e asserções
Erros, exceções e asserçõesErros, exceções e asserções
Erros, exceções e asserções
 
Exception handling in c programming
Exception handling in c programmingException handling in c programming
Exception handling in c programming
 
Oracle PLSQL Step By Step Guide
Oracle PLSQL Step By Step GuideOracle PLSQL Step By Step Guide
Oracle PLSQL Step By Step Guide
 
Set methods in python
Set methods in pythonSet methods in python
Set methods in python
 
Procedure and Functions in pl/sql
Procedure and Functions in pl/sqlProcedure and Functions in pl/sql
Procedure and Functions in pl/sql
 
POO - Aula 10 - Polimorfismo
POO - Aula 10 - PolimorfismoPOO - Aula 10 - Polimorfismo
POO - Aula 10 - Polimorfismo
 
Plsql
PlsqlPlsql
Plsql
 
PHP 5.3 - Estruturas de Controle
PHP 5.3 - Estruturas de ControlePHP 5.3 - Estruturas de Controle
PHP 5.3 - Estruturas de Controle
 
Tutorial oracle forms builder
Tutorial oracle forms builderTutorial oracle forms builder
Tutorial oracle forms builder
 
trigger dbms
trigger dbmstrigger dbms
trigger dbms
 
10. aplicaciones de las pilas
10. aplicaciones de las pilas10. aplicaciones de las pilas
10. aplicaciones de las pilas
 
Python Programming Essentials - M8 - String Methods
Python Programming Essentials - M8 - String MethodsPython Programming Essentials - M8 - String Methods
Python Programming Essentials - M8 - String Methods
 

Destaque

Lista de exercicios 01 introdução
Lista de exercicios 01 introduçãoLista de exercicios 01 introdução
Lista de exercicios 01 introdução
Mauro Pereira
 
Lista de exercicios algoritmos com pseudocodigo
Lista de exercicios   algoritmos com pseudocodigoLista de exercicios   algoritmos com pseudocodigo
Lista de exercicios algoritmos com pseudocodigo
Mauro Pereira
 
Algoritmos e lp parte 2-fundamentos
Algoritmos e lp parte 2-fundamentosAlgoritmos e lp parte 2-fundamentos
Algoritmos e lp parte 2-fundamentos
Mauro Pereira
 
Algoritmos e lp parte 1-introdução
Algoritmos e lp parte 1-introduçãoAlgoritmos e lp parte 1-introdução
Algoritmos e lp parte 1-introdução
Mauro Pereira
 
Redes 4 endereçamento
Redes 4 endereçamentoRedes 4 endereçamento
Redes 4 endereçamento
Mauro Pereira
 
Lista de exercicios 02 hardware
Lista de exercicios 02 hardwareLista de exercicios 02 hardware
Lista de exercicios 02 hardware
Mauro Pereira
 
Linguagem de Programação Pascal
Linguagem de Programação PascalLinguagem de Programação Pascal
Linguagem de Programação Pascal
Marcus Vinicius
 
Exercicios resolvidos visuAlg
Exercicios resolvidos visuAlgExercicios resolvidos visuAlg
Exercicios resolvidos visuAlg
Willians Miyabara
 
APOSTILA DE TRANSISTOR, POLARIZAÇÃO
APOSTILA DE  TRANSISTOR, POLARIZAÇÃOAPOSTILA DE  TRANSISTOR, POLARIZAÇÃO
APOSTILA DE TRANSISTOR, POLARIZAÇÃO
Isvaldo Souza
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
Mauro Pereira
 

Destaque (10)

Lista de exercicios 01 introdução
Lista de exercicios 01 introduçãoLista de exercicios 01 introdução
Lista de exercicios 01 introdução
 
Lista de exercicios algoritmos com pseudocodigo
Lista de exercicios   algoritmos com pseudocodigoLista de exercicios   algoritmos com pseudocodigo
Lista de exercicios algoritmos com pseudocodigo
 
Algoritmos e lp parte 2-fundamentos
Algoritmos e lp parte 2-fundamentosAlgoritmos e lp parte 2-fundamentos
Algoritmos e lp parte 2-fundamentos
 
Algoritmos e lp parte 1-introdução
Algoritmos e lp parte 1-introduçãoAlgoritmos e lp parte 1-introdução
Algoritmos e lp parte 1-introdução
 
Redes 4 endereçamento
Redes 4 endereçamentoRedes 4 endereçamento
Redes 4 endereçamento
 
Lista de exercicios 02 hardware
Lista de exercicios 02 hardwareLista de exercicios 02 hardware
Lista de exercicios 02 hardware
 
Linguagem de Programação Pascal
Linguagem de Programação PascalLinguagem de Programação Pascal
Linguagem de Programação Pascal
 
Exercicios resolvidos visuAlg
Exercicios resolvidos visuAlgExercicios resolvidos visuAlg
Exercicios resolvidos visuAlg
 
APOSTILA DE TRANSISTOR, POLARIZAÇÃO
APOSTILA DE  TRANSISTOR, POLARIZAÇÃOAPOSTILA DE  TRANSISTOR, POLARIZAÇÃO
APOSTILA DE TRANSISTOR, POLARIZAÇÃO
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
 

Semelhante a Guia para traducao algoritmos x l ps

Aula 6 1 linguagem pascal-parte_1
Aula 6   1 linguagem pascal-parte_1Aula 6   1 linguagem pascal-parte_1
Aula 6 1 linguagem pascal-parte_1
Duane Bertoldo
 
Manual robotec
Manual robotecManual robotec
Manual robotec
Magno Ritzmann
 
Módulo 2 pascal
Módulo 2  pascalMódulo 2  pascal
Módulo 2 pascal
Hilário Santos Russo
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascal
Jocelma Rios
 
Apostila linguagem pascal
Apostila linguagem pascalApostila linguagem pascal
Apostila linguagem pascal
Força Jovem Correia
 
Java2
Java2Java2
Cet P Sistemas Linguagem C Introducao
Cet P Sistemas Linguagem C IntroducaoCet P Sistemas Linguagem C Introducao
Cet P Sistemas Linguagem C Introducao
mmind
 
Cartilhado arduino ed1 - cópia
Cartilhado arduino ed1 - cópiaCartilhado arduino ed1 - cópia
Cartilhado arduino ed1 - cópia
Douglas Leandro Gross de Souza
 
Cartilhado arduino ed1
Cartilhado arduino ed1Cartilhado arduino ed1
Cartilhado arduino ed1
Douglas Leandro Gross de Souza
 
Cartilhado arduino ed1
Cartilhado arduino ed1Cartilhado arduino ed1
Cartilhado arduino ed1
Alexandre Fernandes
 
Cartilhado arduino ed10
Cartilhado arduino ed10Cartilhado arduino ed10
Cartilhado arduino ed10
SEDUCCE
 
CartilhadoArduino_ed9.pdf
CartilhadoArduino_ed9.pdfCartilhadoArduino_ed9.pdf
CartilhadoArduino_ed9.pdf
alexandre768088
 
Ud2
Ud2Ud2
Guia rapido de_pascal
Guia rapido de_pascalGuia rapido de_pascal
Guia rapido de_pascal
Tiago
 
Algoritmos - Aula 02 - Construcao de algoritmos
Algoritmos - Aula 02 - Construcao de algoritmosAlgoritmos - Aula 02 - Construcao de algoritmos
Algoritmos - Aula 02 - Construcao de algoritmos
Rodrigo Kiyoshi Saito
 
Introdução pascal
Introdução pascalIntrodução pascal
Introdução pascal
Ilton Prandi
 
Algoritmos e Visualg parte 1
Algoritmos e Visualg   parte 1Algoritmos e Visualg   parte 1
Algoritmos e Visualg parte 1
Marcio Pinto
 
Linguagem C clecioamerico
Linguagem C clecioamericoLinguagem C clecioamerico
Linguagem C clecioamerico
Clécio Américo de Lima
 
Introd aplicjava
Introd aplicjavaIntrod aplicjava
Introd aplicjava
Cícero Quarto
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
apolllorj
 

Semelhante a Guia para traducao algoritmos x l ps (20)

Aula 6 1 linguagem pascal-parte_1
Aula 6   1 linguagem pascal-parte_1Aula 6   1 linguagem pascal-parte_1
Aula 6 1 linguagem pascal-parte_1
 
Manual robotec
Manual robotecManual robotec
Manual robotec
 
Módulo 2 pascal
Módulo 2  pascalMódulo 2  pascal
Módulo 2 pascal
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascal
 
Apostila linguagem pascal
Apostila linguagem pascalApostila linguagem pascal
Apostila linguagem pascal
 
Java2
Java2Java2
Java2
 
Cet P Sistemas Linguagem C Introducao
Cet P Sistemas Linguagem C IntroducaoCet P Sistemas Linguagem C Introducao
Cet P Sistemas Linguagem C Introducao
 
Cartilhado arduino ed1 - cópia
Cartilhado arduino ed1 - cópiaCartilhado arduino ed1 - cópia
Cartilhado arduino ed1 - cópia
 
Cartilhado arduino ed1
Cartilhado arduino ed1Cartilhado arduino ed1
Cartilhado arduino ed1
 
Cartilhado arduino ed1
Cartilhado arduino ed1Cartilhado arduino ed1
Cartilhado arduino ed1
 
Cartilhado arduino ed10
Cartilhado arduino ed10Cartilhado arduino ed10
Cartilhado arduino ed10
 
CartilhadoArduino_ed9.pdf
CartilhadoArduino_ed9.pdfCartilhadoArduino_ed9.pdf
CartilhadoArduino_ed9.pdf
 
Ud2
Ud2Ud2
Ud2
 
Guia rapido de_pascal
Guia rapido de_pascalGuia rapido de_pascal
Guia rapido de_pascal
 
Algoritmos - Aula 02 - Construcao de algoritmos
Algoritmos - Aula 02 - Construcao de algoritmosAlgoritmos - Aula 02 - Construcao de algoritmos
Algoritmos - Aula 02 - Construcao de algoritmos
 
Introdução pascal
Introdução pascalIntrodução pascal
Introdução pascal
 
Algoritmos e Visualg parte 1
Algoritmos e Visualg   parte 1Algoritmos e Visualg   parte 1
Algoritmos e Visualg parte 1
 
Linguagem C clecioamerico
Linguagem C clecioamericoLinguagem C clecioamerico
Linguagem C clecioamerico
 
Introd aplicjava
Introd aplicjavaIntrod aplicjava
Introd aplicjava
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
 

Mais de Mauro Pereira

Programação Web - CSS
Programação Web - CSSProgramação Web - CSS
Programação Web - CSS
Mauro Pereira
 
Redes 7 ferramentas para montagem de redes
Redes 7 ferramentas para montagem de redesRedes 7 ferramentas para montagem de redes
Redes 7 ferramentas para montagem de redes
Mauro Pereira
 
Exercicio introducao a arquitetura de computadores
Exercicio    introducao a arquitetura de computadoresExercicio    introducao a arquitetura de computadores
Exercicio introducao a arquitetura de computadores
Mauro Pereira
 
Introdução à Arquitetura de Computadores
Introdução à Arquitetura de ComputadoresIntrodução à Arquitetura de Computadores
Introdução à Arquitetura de Computadores
Mauro Pereira
 
Sistemas de Numeracao
Sistemas de NumeracaoSistemas de Numeracao
Sistemas de Numeracao
Mauro Pereira
 
Lógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicosLógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicos
Mauro Pereira
 
Trabalho para nota da etapa 2 2017.1
Trabalho para nota da etapa 2 2017.1Trabalho para nota da etapa 2 2017.1
Trabalho para nota da etapa 2 2017.1
Mauro Pereira
 
Redes 6 equipamentos ativos da rede
Redes 6 equipamentos ativos da redeRedes 6 equipamentos ativos da rede
Redes 6 equipamentos ativos da rede
Mauro Pereira
 
Redes 5 cabeamento
Redes 5 cabeamentoRedes 5 cabeamento
Redes 5 cabeamento
Mauro Pereira
 
Redes 3 protocolos
Redes 3 protocolosRedes 3 protocolos
Redes 3 protocolos
Mauro Pereira
 
Redes 2 padronização e arquitetura de redes
Redes 2 padronização e arquitetura de redesRedes 2 padronização e arquitetura de redes
Redes 2 padronização e arquitetura de redes
Mauro Pereira
 
Redes 1 introducao historico conceitos
Redes 1 introducao historico conceitosRedes 1 introducao historico conceitos
Redes 1 introducao historico conceitos
Mauro Pereira
 
6 softwares de manutenção
6 softwares de manutenção6 softwares de manutenção
6 softwares de manutenção
Mauro Pereira
 
4.1 softwares e configurações importantes
4.1 softwares e configurações importantes4.1 softwares e configurações importantes
4.1 softwares e configurações importantes
Mauro Pereira
 
Redes padroes e cabeamento
Redes padroes e cabeamentoRedes padroes e cabeamento
Redes padroes e cabeamento
Mauro Pereira
 
Trabalho para nota da etapa 2 2015.2
Trabalho para nota da etapa 2 2015.2Trabalho para nota da etapa 2 2015.2
Trabalho para nota da etapa 2 2015.2
Mauro Pereira
 
Exercicio 1 - conceitos camadas e protocolos
Exercicio 1 - conceitos camadas e protocolosExercicio 1 - conceitos camadas e protocolos
Exercicio 1 - conceitos camadas e protocolos
Mauro Pereira
 
Exercicio 2 endereços, dispositivos, internet-intranet-extranet, padroes, c...
Exercicio 2   endereços, dispositivos, internet-intranet-extranet, padroes, c...Exercicio 2   endereços, dispositivos, internet-intranet-extranet, padroes, c...
Exercicio 2 endereços, dispositivos, internet-intranet-extranet, padroes, c...
Mauro Pereira
 
Microprocessadores ii arquitetura
Microprocessadores ii arquiteturaMicroprocessadores ii arquitetura
Microprocessadores ii arquitetura
Mauro Pereira
 
Microprocessadores ii revisão de linguagem de programação (parte2)
Microprocessadores ii revisão de linguagem de programação (parte2)Microprocessadores ii revisão de linguagem de programação (parte2)
Microprocessadores ii revisão de linguagem de programação (parte2)
Mauro Pereira
 

Mais de Mauro Pereira (20)

Programação Web - CSS
Programação Web - CSSProgramação Web - CSS
Programação Web - CSS
 
Redes 7 ferramentas para montagem de redes
Redes 7 ferramentas para montagem de redesRedes 7 ferramentas para montagem de redes
Redes 7 ferramentas para montagem de redes
 
Exercicio introducao a arquitetura de computadores
Exercicio    introducao a arquitetura de computadoresExercicio    introducao a arquitetura de computadores
Exercicio introducao a arquitetura de computadores
 
Introdução à Arquitetura de Computadores
Introdução à Arquitetura de ComputadoresIntrodução à Arquitetura de Computadores
Introdução à Arquitetura de Computadores
 
Sistemas de Numeracao
Sistemas de NumeracaoSistemas de Numeracao
Sistemas de Numeracao
 
Lógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicosLógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicos
 
Trabalho para nota da etapa 2 2017.1
Trabalho para nota da etapa 2 2017.1Trabalho para nota da etapa 2 2017.1
Trabalho para nota da etapa 2 2017.1
 
Redes 6 equipamentos ativos da rede
Redes 6 equipamentos ativos da redeRedes 6 equipamentos ativos da rede
Redes 6 equipamentos ativos da rede
 
Redes 5 cabeamento
Redes 5 cabeamentoRedes 5 cabeamento
Redes 5 cabeamento
 
Redes 3 protocolos
Redes 3 protocolosRedes 3 protocolos
Redes 3 protocolos
 
Redes 2 padronização e arquitetura de redes
Redes 2 padronização e arquitetura de redesRedes 2 padronização e arquitetura de redes
Redes 2 padronização e arquitetura de redes
 
Redes 1 introducao historico conceitos
Redes 1 introducao historico conceitosRedes 1 introducao historico conceitos
Redes 1 introducao historico conceitos
 
6 softwares de manutenção
6 softwares de manutenção6 softwares de manutenção
6 softwares de manutenção
 
4.1 softwares e configurações importantes
4.1 softwares e configurações importantes4.1 softwares e configurações importantes
4.1 softwares e configurações importantes
 
Redes padroes e cabeamento
Redes padroes e cabeamentoRedes padroes e cabeamento
Redes padroes e cabeamento
 
Trabalho para nota da etapa 2 2015.2
Trabalho para nota da etapa 2 2015.2Trabalho para nota da etapa 2 2015.2
Trabalho para nota da etapa 2 2015.2
 
Exercicio 1 - conceitos camadas e protocolos
Exercicio 1 - conceitos camadas e protocolosExercicio 1 - conceitos camadas e protocolos
Exercicio 1 - conceitos camadas e protocolos
 
Exercicio 2 endereços, dispositivos, internet-intranet-extranet, padroes, c...
Exercicio 2   endereços, dispositivos, internet-intranet-extranet, padroes, c...Exercicio 2   endereços, dispositivos, internet-intranet-extranet, padroes, c...
Exercicio 2 endereços, dispositivos, internet-intranet-extranet, padroes, c...
 
Microprocessadores ii arquitetura
Microprocessadores ii arquiteturaMicroprocessadores ii arquitetura
Microprocessadores ii arquitetura
 
Microprocessadores ii revisão de linguagem de programação (parte2)
Microprocessadores ii revisão de linguagem de programação (parte2)Microprocessadores ii revisão de linguagem de programação (parte2)
Microprocessadores ii revisão de linguagem de programação (parte2)
 

Último

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
 
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
 
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
 
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
 

Último (6)

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
 
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
 
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
 
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
 

Guia para traducao algoritmos x l ps

  • 1. GUIA PARA TRADUÇÃO DE ALGORITMO PARA LINGUAGENS C e PASCAL 1 - INTRODUÇÃO Este guia tem por objetivo ajudá-lo a entender como transpor (traduzir) algoritmos para programas em uma linguagem de programação (no caso, a linguagem C e a linguagem Pascal) e aplicar todo o conhecimento adquirido sobre criação de algoritmos e lógica de programação para criar programas nessas linguagens de programação. O essencial neste ponto é que você já conheça as estruturas básicas de criação de algoritmos (seqüencial, condicionais e repetição) e saiba criar algoritmos em pseudocódigo usando elas. Observe que você não deve usar a “tradução” de algoritmos como uma prática para a programação. O objetivo aqui é ajudá-lo nos primeiros passos na programação em uma dessas linguagens. Após algum tempo de prática e exercícios, você já conhecerá a maior parte das palavras reservadas da linguagem e saberá como construir programas usando os manuais e guias de referência da mesma, visto que não é obrigação do programador “decorar” todos os comandos das linguagens de programação. Use este material sempre em conjunto com um livro, manual ou apostila de referência das linguagens. 2 – NOTAÇÃO UTILIZADA Neste material, onde você encontrar algo entre < > significa que você deve substituir tudo (inclusive o < > ) pelo que que está indicado entre os sinais < >. Onde você encontrar algo entre [ ] indica que este fragmento é opcional e pode ser omitido (inclusive o [ ] ). 3 – ESTRUTURAS GERAIS Estrutura Formato geral de um algoritmo: Linguagem C Pascal Variaveis <declaração de variáveis> Inicio <Blocos de comando> FimAlgoritmo <tipo> <nome da função>() { <declaração de variáveis> <comandos> } Var <declaração de variáveis> Begin <comandos> End; Exemplo: Exemplo: Exemplo: Variaveis a,b: inteiro Inicio Escreval(“Olá!”) FimAlgoritmo Caractere de final da linha de comando Comentários em bloco int main() { int a,b; Printf(“Olá!n”); } ; Var a,b: integer Begin Writeln(‘Olá!’); End; ; /* comentário... Comentário.. */ // comentário { <comandos> } (* comentário... comentário... *) // Comentário Begin <comandos> End; Comentários de uma linha Bloco de comandos OBS: • • • • EM C, as strings vêm entre aspas duplas e os tipos caractere ficam entre aspas simples Em Pascal, tanto as strings quanto os tipos caracteres ficam entre aspas simples A linguagem C diferencia palavras em letra minúsculas de palavras com letras maiúsculas, ou seja, ela é “case sensitive”. Portanto´: o Devemos escrever todos os comandos em letras minúsculas, ou de forma idêntica a como consta na documentação da linguagem o A variável num e Num são variáveis diferentes Já o Pascal não faz diferenciação de maiúscula e minúsculas
  • 2. 4 – TIPOS DE DADOS Algoritmos Inteiro Linguagem C Int Modificadores: unsigned, long Real float Variações: double, long Double Caractere String char char[n] // (vetor de caracteres) Lógico (Booleano) OBS: A linguagem C não tem o tipo booleano. O valor inteiro zero é considerado FALSO e qualquer valor inteiro maior que zero é considerado VERDADEIRO . Pascal Integer Variações: Shortint, Smallint, Longint, Int64, Word, Longword real Variações: Single, Extended, comp, Currency char string Variações: ShortString, AnsiString, WideString boolean 5 – DECLARAÇÃO DE VARIÁVEIS Algoritmos As variáveis são declaradas na seção “Var” e o tipo vem após a lista de variáveis, separado por “:” (dois pontos): Linguagem C As variáveis são declaradas dentro e logo no início do bloco de comandos e o tipo vem antes da lista de variáveis, sem o “:” : Pascal As variáveis são declaradas na seção Var e o tipo vem após a lista de variáveis, separado por “:” (dois pontos): Variaveis n1,n2: inteiro Inicio Escreva(“Digite n1: “) Leia(n1) Escreva(Digite n2: “) Leia(n2) FimAlgoritmo Int main() { int n1,n2; Var n1, n2: integer Begin Write(‘Digite valor 1: ‘); Readln(n1); Write(‘Digite valor 2: ‘); Readln(n2); End; printf(“Digite valor 1: “); scanf(“%d”,&n1); printf(“Digite valor 2: “); scanf(“%d”,&n2); } 6 – OPERADORES OPERADORES ARITMÉTICOS Algoritmos - (inversão de sinal) + (valor positivo) ** (exponenciação) * (multiplicação) / (divisão) + (adição) - (subtração) Linguagem C + Pow(<base>,<expoente>) * / + - Pascal + ^ * / + - OPERADORES RELACIONAIS Algoritmos = <> < > >= <= Linguagem C == != < > >= <= Pascal = <> < > >= <=
  • 3. OPERADORES LÓGICOS Algoritmos OU E NÃO Linguagem C || && ! INCREMENTO E DECREMENTO DE VARIÁVEL Algoritmos Linguagem C x <- x +1 x++ ou x += 1 x <- x + N x += N x <- x - 1 x-- ou x -= 1 x <- x - N x -= N Pascal OR AND NOT Pascal x:=x+1 ou inc(x) x:=x+N x:=x-1 ou dec(x) X:=x - N 6 – VETORES, MATRIZES E REGISTROS Algoritmos Vetor[1..<tamanho>] de <tipo> Vetor[1..<lin>,1..<col>] de <tipo> Linguagem C <tipo> <variável>[<tamanho>]; <tipo> <variável>[<lin>][<col>]; Pascal array [1..<tamanho>] of <tipo>; Array [1..<lin>][1..<col>] of <tipo>; 7 – COMANDOS E ESTRUTURAS DE PROGRAMAÇÃO Algoritmos Linguagem C Pascal Escreva Escreval Leia printf(“<string>”,<parâmetros>); printf(“<string>n”,<parâmetros>); scanf(<string de controle>,<lista de argumentos>); if (<condição>) <bloco de comandos> [else <bloco de comandos> write(<parâmetros>); writeln(<parâmetros>); Readln(<variável>); switch (<variável>) { case <constante_1>: <declaração_1>; break; case <constante_2>: <declaração_2>; break; . . . case <constante_n>: <declaração_n>; break; default <declaração_padrão>; } for(<expressão de inicialização>;<condição>;<expressão de incremento>) <bloco de comandos> Case <evariável> of <ListaDeCaso1>: <comando1>; <ListaDeCaso1>: <comando1>; ... <ListaDeCasoN>: <comandoN>; Else <comando>; End; while(<condição>) <bloco de comandos> While <condição> do <bloco de comandos> do Repeat <bloco de comandos> Until <expressão lógica> Se <condição> Então <comandos> [Senão <comandos>] Fimse Escolha <variável> caso <val.constante 1>: <bloco de comandos 1> caso <val.constante 2>: <bloco de comandos 2> ... caso <val.constante n>: <bloco de comandos n> outrocaso <bloco de comandos alternativo> FimEscolha Para <variável> de <valor inicial> ate <valor final> [passo <incremento>] faca <comandos> fimpara Enquanto <expr.lógica> faca <bloco de comandos> FimEnquanto Repita <bloco de comandos> Ate <expressão lógica> <bloco de comandos> While(<condição>); if <condição> then <bloco de comandos> Else <bloco de comandos> For <variável> := inicial> to / downto final> do <bloco de comandos> <valor <valor