A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Fundamentos da Programação de Computadores

Apresentações semelhantes


Apresentação em tema: "Fundamentos da Programação de Computadores"— Transcrição da apresentação:

1 Fundamentos da Programação de Computadores
Fábio Botelho Segundo Semestre de 2010

2 Módulo I - Conceitos Básicos
O homem sempre procurou criar máquinas ou desenvolver técnicas que facilitem a sua vida O ápice da criação do homem é o computador O computador é capaz de auxiliar em qualquer coisa que lhe seja solicitada Não tem iniciativa, independência, não é criativo nem inteligente Precisa receber as instruções nos mínimos detalhes

3 Conceitos Básicos Processamento de Dados Informações Iniciais
Operações sobre as informações Resposta + Dispositivo de Entrada CPU / Memória Dispositivo de Saída

4 Conceitos Básicos Hardware X Software
Hardware é a parte física do computador Software permite realizar determinado tipo de processamento de dados para uma finalidade específica Quando queremos escrever um software utilizamos uma linguagem de programação para codificar um ou vários componentes

5 Conceitos Básicos Etapas para o desenvolvimento de um programa de computador Análise Estuda-se o problema a ser solucionado para definir dados de entrada, processamentos e dados de saída Algorítmo Ferramentas como descrição narrativa, fluxograma ou português estruturado são utilizadas para uma resolução inicial do problema em um alto nível de abstração Codificação O Algorítmo é transformado em códigos da linguagem de programação escolhida

6 Problemas do mundo real
Percepção Humana, como os homens percebem e interagem com o mundo real Algorítmo Intermediário, entre a percepção humana e o modo como o computador executa as instruções Codificação em uma linguagem de programação Tradução / Compilação Interpretação Código Objeto Linguagem de Máquina Ligador (Linkeditor) Próximo do Computador, como são executadas as instruções de máquina Hardware / Computador Programa executável

7 Conceitos Básicos Um Programa é portanto a codificação de um algorítmo em uma determinada linguagem de programação (ASCENCIO, 1999)

8 Conceitos Básicos Conceito de Algorítmo
É uma sequência de passos que visa atingir um objetivo bem definido (FORBELLONE, 1999) É uma sequência de passos que deve ser seguida para a realização de uma tarefa (ASCENCIO, 1999) É uma sequência finita de instruções ou operações cuja execução, em tempo finito, resolve um problema computacional… (SALVETTI, 1999)

9 Conceitos Básicos Exemplos de Algorítmo usando o método da narração descritiva Somar três números PASSO 1 – Ler os três números PASSO 2 – Atribuir a soma a uma variável que armazene o resultado PASSO 3 – Mostrar o resultado

10 Conceitos Básicos Exemplos de Algorítmo usando o método da narração descritiva 2. Fazer um Sanduíche PASSO 1 – Pegar o pão PASSO 2 – Cortar o pão ao meio PASSO 3 – Passar a maionese PASSO 4 – Por alface e tomate PASSO 5 – Por o amburguer frito no pão PASSO 6 - Comer

11 Conceitos Básicos Exemplos de Algorítmo usando o método da narração descritiva 3. Sacar dinheiro no banco 24 horas PASSO 1 – Ir ao banco PASSO 2 – Colocar o cartão PASSO 3 – Digitar a senha PASSO 4 – Solicitar a quantia PASSO 5 – Se houver saldo suficiente para o saque, realizar o saque. Caso contrário exibir mensagem saldo insuficiente PASSO 6 – Retirar o cartão PASSO 7 – Sair do banco

12 Conceitos Básicos Método para a Construção de Algorítmos
Ler atentamente o enunciado destacando pontos mais importantes Definir os dados de entrada, ou seja, dados fornecidos Definir os processamentos necessários para se obter os dados de saída Definir os dados de saída Construir o algorítmo Testar o algorítmo realizando simulações

13 Conceitos Básicos Tipos de Algorítmos Descrição Narrativa Fluxograma
Pseudocódigo ou portugol

14 Conceitos Básicos Tipos de Algorítmos Descrição Narrativa
Analisa-se o enunciado do problema, escrevendo os passos para a solução, utilizando a linguagem natural Vantagem: não se aprende nenhuma nova linguagem Desvantagem: às vezes não há um mapemaneto direto do algorítmo na linguagem de programação

15 Conceitos Básicos Tipos de Algorítmos Fluxograma
Consiste em analisar o enunciado do problema e escrever utilizando símbolos gráficos predefinidos os passos a serem seguidos para a resolução do problema Vantagem: O entendimento de elementos gráficos é mais fácil Desvantagem: Necessário aprender a simbologia dos fluxogramas

16 Conceitos Básicos Tipos de Algorítmos Fluxograma
Utilizado para indicar início e fim do algorítmo Indica o sentido do fluxo de dados Indica cálculos e atribuições de valores Representa a entrada de dados Representa a saída de dados Indica desvio condicional do fluxo normal de execução

17 Conceitos Básicos Exemplos de Algorítmos
Faça um algorítmo para mostrar o resultado da multiplicação de dois números Descrição narrativa: PASSO 1 – Ler os dois números que serão multiplicados PASSO 2 – Multiplicar os números PASSO 3 – Mostrar o resultado obtido na multiplicação

18 Conceitos Básicos Exemplos de Algorítmos
Faça um algorítmo para mostrar o resultado da multiplicação de dois números Fluxograma Início N1, N2 M=N1 * N2 Fim M

19 Conceitos Básicos Exemplos de Algorítmos
Faça um algorítmo para mostrar o resultado da multiplicação de dois números Pseudocódigo (Portugol) ALGORÍTMO DECLARE N1,N2,M NUMERICO ESCREVA “Digite dois números “ LEIA N1, N2 M N1 * N2 ESCREVA “Multiplicação = “, M FIM ALGORÍTMO

20 Conceitos Básicos Exemplos de Algorítmos
Faça um algorítmo para mostrar o resultado da multiplicação de dois números Implementação na Linguagem de Programação Pascal program fape (input,output); var n1,n2,m:integer; begin write('ENTRE COM DOIS NUMEROS: '); read(n1,n2); m:=n1*n2; writeln; writeln('A multiplicacao e:',m); read(n1); end.

21 Conceitos Básicos Exemplos de Algorítmos
Faça um algorítmo para mostrar o resultado da multiplicação de dois números Implementação na Linguagem de Programação C# using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleMultiplicacao { class Multiplicacao static void Main(string[] args) string literalN1, // primeira string literalN2; // segunda string int n1, // primeiro número n2, // segundo número m; // soma de n1 com n2 // lê o primeiro número como uma string Console.Write("Entre com um número inteiro: "); literalN1 = Console.ReadLine(); // lê o segundo número como string Console.Write("\nEntre com o segundo número inteiro: "); literalN2 = Console.ReadLine(); // Converte números de string para inteiro n1 = Int32.Parse(literalN1); n2 = Int32.Parse(literalN2); // multiplica os dois números n1 e n2 e atribui o resultado a m m = n1 * n2; // mostra o resultado Console.WriteLine("\nA multiplicação é {0}.", m); }

22 Conceitos Básicos Exemplos de Algorítmos
Faça um algorítmo para mostrar o resultado da multiplicação de dois números Implementação na Linguagem de Programação C# com Formulário using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form public Form1() InitializeComponent(); } private void label1_Click(object sender, EventArgs e) private void r_TextChanged(object sender, EventArgs e) private void button1_Click(object sender, EventArgs e) double res = Double.Parse(a.Text.ToString()) * Double.Parse(b.Text.ToString()); r.Text = res.ToString();

23 Conceitos Básicos Exercício – Faça um algorítmo para descrever como é o sistema de avaliação da FAPE. Utilize Descrição Narrativa, Fluxograma e Pseudocódigo

24 Conceitos Básicos Exercício - Utilize Descrição Narrativa, Fluxograma e Pseudocódigo para as seguintes questões: Faça um algorítmo para mostrar o resultado da divisão de dois números. Faça um algorítmo para calcular a média aritmética entre duas notas de um aluno e mostrar o resultado aprovado ou reprovado

25 Conceitos Básicos Exercício - Utilize Descrição Narrativa, Fluxograma e Pseudocódigo para as seguintes questões: Faça um algorítmo para calcular o novo salário de um funcionário. Aqueles que ganham até R$ 500,00 deverão ter aumento de 20%. Os demais, apenas 10%

26 Conceitos Básicos Conceito de Variável
Um algorítmo, e posteriormente um programa, recebe dados. Tais dados precisam ser armazenados no computador para serem utilizados no processamento. Esse armazenamento é feito na memória

27 Conceitos Básicos Conceito de Variável
O armazenamento do valor associado a uma variável em memória dá-se no sistema de notação binária, ao invés do decimal com o qual estamos acostumados a trabalhar 1 bit representa 0 ou 1 1 byte é igual a 1 x 8 = 8 bits Os valores associados a variáveis são armazenados na memória, representados por bits

28 Conceitos Básicos Conceito de Variável
Existe uma tabela denominada tabela ASCII que associa números binários aos caracteres alfanuméricos Ex.: Código ASCII de número 158 representa a letra x, 159 representa a letra y Ex.: É representado em binário por: ASCII (158)  x  ASCII (159)  y 

29 Conceitos Básicos Conceito de Variável
O valor armazenado na memória do computador está no formato binário O processo de conversão do decimal para o binário se dá de forma bem simples pela divisão do número por 2, sendo o número binário formado pelos restos do processo de divisão

30 Conceitos Básicos Conceito de Variável
O processo de conversão do binário para o decimal se dá de forma da seguinte forma: x x x x x x x x Binário: somados dá 158 ASCII de 158 corresponde a letra x e é representado por sendo desta forma armazenado na memória do computador

31 Conceitos Básicos Conceito de Variável x := 10
Atribui o valor 10 à variável x nome := ‘Maria’ Atribui o valor alfanumérico Maria à variável nome

32 Conceitos Básicos Tipos de Dados Numérico Lógico Literal Caractere

33 Conceitos Básicos Tipos de Dados Numérico Dividem-se em dois grupos:
Inteiros podem ser positivos ou negativos e não possuem casa decimal Ocupa dois bytes ( 2 x 8 = 16 bits) de memória 28 x 28 = possíveis representações -32767, , …, 0, …, 32766,32767 Reais Podem ser positivos e negativos e possuem parte decimal Ocupa 4 bytes (4 x 8 = 32 bits) 28 x 28 x 28 x 28 = 232 possíveis representações Possui de 6 a 11 dígitos significativos com sinal Ex: 23,45 ; 346,89 ; -34,88

34 Conceitos Básicos Tipos de Dados Lógico
Também chamados de dados booleanos. Podem assumir apenas os valores verdadeiro ou falso Ocupa 1 byte (1 x 8 = 8 bits)

35 Conceitos Básicos Tipos de Dados Literal ou Caractere
Dados formados por um único caractere ou uma cadeia de caracteres. São as letras, maiúsculas, minúsculas, números e caracteres especiais &, ?, + Ocupa 1 byte (8 bits) para cada caractere Exemplos: ‘aluno’ ‘1234’ ‘1 + 2’

36 Conceitos Básicos Formação de Identificadores
São os nomes das variáveis, dos programas, das constantes, das rotinas, etc. As regras básicas para a formação de identificadores são: Os caracteres que utiliza na formação dos identificadores são: os números, as letras maiúsculas, minúsculas e o caractere sublinhado O primeiro caractere deve ser sempre uma letra ou caractere sublinhado ( _ ) Não são permitidos espaços em branco e caracteres especiais Não podem ser usadas palavras reservadas nos identificadores, ou seja, palavras que pertençam a uma linguagem de programação

37 Conceitos Básicos Formação de Identificadores Exemplos válidos: A nota
MATRICULA

38 Conceitos Básicos Formação de Identificadores
Exemplos não válidos e a explicação: 5b … não pode começar com número e 12 … não pode ter espaço em branco x-y … não pode ter - nota(2) … não pode ter ( ) case … não pode ser uma palavra reservada da linguagem de programação ( e.g. pascal) set … não pode ser uma palavra reservada

39 Conceitos Básicos Linguagem Pascal
Desenvolvida em 1968 por Niklaus Wirth, na Suiça, destinada à programação científica É uma linguagem estruturada, ou seja, possui regras para a escrita de programas Possui um ambiente integrado de desenvolvimento gráfico ou somente texto que integra: Editor Compilador Depurador

40 Conceitos Básicos Linguagem Pascal
Para fazer um programa utilizando a linguagem pascal, deve-se: Analisar o enunciado do problema, algorítmo Escrever o código-fonte, respeitando a sintaxe da linguagem pascal Compilá-lo Corrigir erros Executá-lo quando não houver mais erros

41 Conceitos Básicos Linguagem Pascal
Integrated Development Environment (IDE)s disponíveis Turbo Pascal (Interface DOS) FPC – Free Pascal (Interface DOS) Dev Pascal (Ambiente Gráfico)

42 Conceitos Básicos C, C++, Visual Basic .NET e JAVA

43 Módulo II – Estrutura Sequencial
Estrutura Sequencial em Algorítmos ALGORITMO DECLARE bloco de comandos FIM ALGORÍTMO

44 Módulo II – Estrutura Sequencial
Estrutura Sequencial em Algorítmos Declaração de Variáveis As Variáveis são declaradas após a palavra DECLARE ou outra que sugira a mesma ação Os tipos utilizados podem ser definidos como NUMÉRICO (variáveis que receberão números), LITERAL (receberão caracteres) e LÓGICO (receberão ou Verdadeiro ou Falso) Ex.: DECLARE X numérico Y, Z literal TESTE lógico

45 Módulo II – Estrutura Sequencial
Estrutura Sequencial em Algorítmos Comando de Atribuição em Algorítmos É utilizado para atribuir valores ou operações a variáveis, sendo representado pelo símbolo ← ou pelo símbolo := Ex.: x ← 4 x ← x + 2 y ← “aula” teste ← falso

46 Módulo II – Estrutura Sequencial
Estrutura Sequencial em Algorítmos Comando de Entrada em Algorítmos O comando de entrada é usado para receber os dados digitados pelo usuário Os dados recebidos são armazenados em variáveis. Pode-se usar a palavra LEIA Ex.: LEIA X LEIA Y

47 Módulo II – Estrutura Sequencial
Estrutura Sequencial em Algorítmos Comando de Saída em Algorítmos É utilizado para mostrar dados na tela ou na impressora ou outra unidade de saída de dados É representado pela palavra ESCREVA e os dados podem ser conteúdos de variáveis ou mensagens Ex.: ESCREVA X ESCREVA “Conteúdo de Y = “, Y

48 Módulo II – Estrutura Sequencial
Estrutura Sequencial em PASCAL PROGRAM nome; USES nomes das unidades; VAR nome das variáveis : tipo; BEGIN bloco de comandos; END

49 Módulo II – Estrutura Sequencial
Estrutura Sequencial em PASCAL As unidades são biblitecas utilizadas pela linguagem Pascal para a correta execução do programa. A unidade CRT é obrigatória em todos os programas, pois faz a adequação do hardware com o programa.

50 Módulo II – Estrutura Sequencial
Declaração de Variáveis em Pascal As variáveis são declaradas após a palavra VAR Os tipos mais utilizados são: INTEGER (números inteiros) REAL (números reais) CHAR (caracteres) STRING (vários caracteres) BOOLEAN (verdadeiro ou falso)

51 Módulo II – Estrutura Sequencial
Declaração de Variáveis em Pascal Var X : INTEGER; Y,Z : REAL; NOME : STRING; SEXO : CHAR; TESTE : BOOLEAN;

52 Módulo II – Estrutura Sequencial
Declaração de Variáveis em Pascal Os identificadores são os nomes das variáveis, dos programas, das constantes, das rotinas e unidades, entre outras As regras básicas para a formação de identificadores: Podem ter qualquer tamanho. O compilador usará apenas os 63 primeiros caracteres Os caracteres que você pode utilizar na formação dos identificadores são os números, as letras maiúsculas e minúsculas e o caractere sublinhado O compilador não faz distinção entre maiúsculas e minúsculas, assim o identificador NUM é igual a num O primeiro caractere deve ser sempre uma letra ou o sublinhado Não são permitidos espaços em branco e caracteres especiais $, +, -, %, !) Não é permitido usar palavras reservadas

53 Módulo II – Estrutura Sequencial
Palavras Reservadas em Pascal São os nomes utilizados pelo compilador para representar comandos, operadores e nomes de seções de programa. Na linguagem Pascal são: AND END NIL SHR ASM FILE NOT STRING ARRAY FOR OBJECT THEN BEGIN FUNCTION OF TO CASE GOTO OR TYPE CONST IF PACKED UNIT CONSTRUCTOR IMPLEMENTATION PROCEDURE UNTIL DESTRUCTOR IN PROGRAM USES DIV INLINE RECORD VAR DO INTERFACE REPEAT WHILE DOWNTO LABEL SET WITH ELSE MOD SHL XOR

54 Módulo II – Estrutura Sequencial
Palavras Reservadas Os tipos de dados mais utilizados na linguagem PASCAL estão descritos na tabela a seguir: TIPO REPRESENTAÇÃO FAIXA TAMANHO shortint Numérico inteiro -128 a 127 1 byte integer a 2 bytes logint a 4 bytes byte 0 a 255 word 0 a real Numérico real 2,9 x a 1,7 x 1038 (11 a 12 dígitos com sinal) 6 bytes single 1,5 x a 3,4 x 1038 (7 a 8 dígitos com sinal) double 5 x a 1,7 x (15 a 16 dígitos com sinal) 8 bytes extended 10 bytes comp boolean lógico True ou false char 1 caractere Qualquer caractere string Cadeia de caracteres Qualquer conjunto de caracteres 1 byte para cada caractere

55 Módulo II – Estrutura Sequencial
Comando de Atribuição em Pascal O comando de atribuição é usado para atribuir valores ou operações a variáveis, sendo representado por := (sinal de dois pontos e o sinal de igual juntos, sem espaço) Ex.: x := 4; x := x + 2; y := 2.5; nome := ‘Aula’; sexo := ‘F’; teste := false;

56 Módulo II – Estrutura Sequencial
Comando de Atribuição em Pascal Em pascal, os caracteres literais são representados entre apóstrofos simples e os números reais utilizam o ponto decimal como separador Em pascal, o ponto e vírgula (;) é utilizado para finalizar um comando

57 Módulo II – Estrutura Sequencial
Comando de Entrada em Pascal É utilizado para receber dados digitados pelo usuário Os dados recebidos são armazenados em variáveis Representado pela palavra READ ou READLN Sintaxe: readln(nome_da_variavel); readln(nome_da_variavel1, nome_da_variavel2); Ex: readln(x); readln(x,y);

58 Módulo II – Estrutura Sequencial
Comando de Saída em Pascal É utilizado para mostrar dados na tela ou na impressora É representado pela palavra WRITE ou WRITELN Sintaxe: write(nome_da_variavel); writeln(nome_da_variavel); write (‘Mensagem’); writeln(‘Mensagem’); Ex: write(x); writeln(‘O numero e: ‘, x);

59 Módulo II – Estrutura Sequencial
Comentários em Pascal Não são interpretados pelo Compilador Servem apenas para explicar algo a respeito da codificação de um programa de computador Usa-se: {…….} Ou (* ……… *)

60 Módulo II – Estrutura Sequencial
Operadores e Funções predefinidas em Pascal Operandos Resultado + Soma Z ou R Z ou R - Subtração Z ou R Z ou R * Multiplicação Z ou R Z ou R / Divisão Z ou R R div Quociente inteiro Z Z mod resto da divisão Z Z

61 Módulo II – Estrutura Sequencial
Operadores e Funções predefinidas em Pascal | x | Z ou R Z ou R ABS(X) ex Z ou R Z ou R EXP(X)

62 Módulo II – Estrutura Sequencial
Estrutura Sequencial em C# 1. O ponto inicial de execução do programa é o método main pertencente à classe a partir da qual todas as funcionalidades da aplicação estarão acessíveis 2. Um programa executará a partir do método main, instrução após instrução do início ao fim 3. Ao encontrar um desvio condicional uma ou outra parte do programa será executada, de acordo com a condição dada 4. Ao encontrar uma estrutura de repetição, parte do programa será executado repetidamente enquanto uma condição dada for satisfeita 5. O ponto de execução do programa pode ser desviado a um método na mesma classe. Dentro do método são válidas as regras 2 a 4 anteriores 6. O ponto de execução do programa pode ser desviado a um objeto instanciado de uma classe, onde são válidas as regras 2 a 5

63 Módulo II – Estrutura Sequencial
Operadores e Funções predefinidas em C#

64 Módulo II – Estrutura Sequencial
Operadores e Funções predefinidas em C#

65 Módulo II – Estrutura Sequencial
Operadores e Funções predefinidas em C#

66 Módulo II – Estrutura Sequencial
Operadores e Funções predefinidas em C#

67 Módulo II – Estrutura Sequencial
Declaração de Variáveis em C# As variáveis são declaradas no corpo do programa, como variáveis da classe (propriedades), como parâmetros repassados a funções da classe (métodos) ou no corpo de métodos Declara-se uma variável informando o seu tipo antes do nome da variável Os tipos mais utilizados são:

68 Módulo II – Estrutura Sequencial
Declaração de Variáveis em C# Os tipos mais utilizados são:

69 Módulo II – Estrutura Sequencial
Declaração de Variáveis em C# Os tipos mais utilizados são:

70 Módulo II – Estrutura Sequencial
Declaração de Variáveis em C# Os identificadores são os nomes das variáveis, das classes, das constantes, dos métodos As regras básicas para a formação de identificadores: Não devem ser muito longos pois dificulta o entendimento e a memorização da finalidade da variável Os caracteres que você pode utilizar na formação dos identificadores são os números, as letras maiúsculas e minúsculas e o caractere sublinhado O primeiro caractere deve ser sempre uma letra ou o sublinhado Não são permitidos espaços em branco e caracteres especiais $, +, -, %, !) Não é permitido usar palavras reservadas

71 Módulo II – Estrutura Sequencial
Palavras Reservadas em C# São os nomes utilizados pelo compilador para representar comandos, operadores e nomes de seções de programa. Na linguagem C# são:

72 Módulo II – Estrutura Sequencial
Palavras Reservadas em C# São os nomes utilizados pelo compilador para representar comandos, operadores e nomes de seções de programa. Na linguagem C# são:

73 Módulo II – Estrutura Sequencial
Exercício Após a elaboração do algorítmo em Português Estruturado e em Fluxograma, implemente em C# um programa para entrar com o valor da temperatura em celsius e convertê-la para fahrenheit. Em seguida, faça o mesmo para entrar com os valores em fahrenheit e convertê-lo para celsius.

74 Módulo II – Estrutura Sequencial
Exercício Use as fórmulas: grau Celsius - grau Fahrenheit °F = °C × 1,8 + 32 grau Fahrenheit - grau Celsius °C = (°F - 32) / 1,8

75 Módulo II – Estrutura Sequencial
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program static void Main(string[] args) double c, f; Console.Write("Entre com o valor em graus Celsius: "); c = Double.Parse( Console.ReadLine() ); /* f = (c * 1.8) + 32; */ f = CalculaFarenheit(c); Console.Write("O valor em graus Farenheit é: " ); Console.WriteLine(f); Console.ReadKey(); } static double CalculaFarenheit( double celsius ) double farenheit = celsius * ; return farenheit;

76 Módulo III – Estrutura Condicional
Estrutura Condicional em Algorítmos Estrutura Condicional Simples Se condição Então comando A condição possui apenas dois valores possíveis: verdadeiro ou falso O comando só será executado caso a condição seja verdadeira O comando pode ser composto formando um bloco de comandos, neste caso o conjunto de comandos é posto entre as palavras início e fim

77 Módulo III – Estrutura Condicional
Estrutura Condicional em Algorítmos Estrutura Condicional Simples Se condição Então início comando1; comando2; comando3; fim

78 Módulo III – Estrutura Condicional
Estrutura Condicional em Pascal Estrutura Condicional Simples em Pascal if condição then begin comando1; comando2; comando3; end;

79 Módulo III – Estrutura Condicional
Estrutura Condicional em C# Estrutura Condicional Simples em C# if ( condição ) comando; Exemplo: if ( notaAluno >= 7 ) Console.WriteLine( “Aprovado!" ); if ( condição ) { // bloco de comandos comando1; comando2; comando3; } if ( notaAluno >= 7 ) { Console.WriteLine( “################" );

80 Módulo III – Estrutura Condicional
Estrutura Condicional Composta em Algorítmos Estrutura Condicional Composta Se condição Então início comando1; comando2; comando3; fim Senão

81 Módulo III – Estrutura Condicional
Estrutura Condicional Composta em PASCAL Estrutura Condicional Composta If condição then begin comando1; comando2; comando3; end else end;

82 Módulo III – Estrutura Condicional
Estrutura Condicional Composta em C# Estrutura Condicional Composta If ( condição ) comando1; else comando2; Exemplo: if ( notaAluno >= 7 ) Console.WriteLine( “Aprovado!" ); Console.WriteLine( “Reprovado!" );

83 Módulo III – Estrutura Condicional
Estrutura Condicional Composta em C# if ( condição ) { // bloco de comandos comando1; comando2; comando3; comandoN; } Else { comando1 Exemplo: if ( notaAluno >= 7 ) { // bloco de comandos Console.WriteLine( “######################" ); Console.WriteLine( “Aprovado!" ); else { //bloco de comandos Console.WriteLine( “Reprovado!" );

84 Módulo III – Estrutura Condicional
Estrutura Condicional Composta em C# Estrutura Condicional Composta O operador condicional (?:) está relacionado à estrutura de seleção if/else Exemplo: Console.WriteLine( studentGrade >= 7 ? “Aprovado!" : “Reprovado!" );

85 Módulo III – Estrutura Condicional
Portugol para a Estrutura Switch CASE (Seleção Múltipla) Selector tem que ser do tipo char caso selector igual a ‘1’: comando; // comando simples ‘2’: início // bloco de comandos comando1; comando2; comando3; fim // final do bloco de comandos para a opção 2 Fim seleção multipla

86 Módulo III – Estrutura Condicional
Estrutura Switch CASE em C# Selector tem que ser do tipo char Console.Write( “Entre com uma letra de A a F: " ); grade = Char.Parse( Console.ReadLine() ); switch ( grade ) { case 'A': // grade is uppercase A case 'a': // or lowercase a ++aCount; break; case 'B': // grade is uppercase B case 'b': // or lowercase b ++bCount; case 'C': // grade is uppercase C case 'c': // or lowercase c ++cCount; case 'D': // grade is uppercase D case 'd': // or lowercase d ++dCount; case 'F': // grade is uppercase F case 'f': // or lowercase f ++fCount; default: // processes all other characters Console.WriteLine( “Letra incorreta." "\nEntre com uma nova letra!" ); }

87 Módulo III – Estrutura Condicional
Implemente uma calculadora para fazer as operações básicas com dois números Implemente um programa em C# para entrar com as letras de A até F. O programa deverá repetir enquanto não for digitada a letra “S” ou “s”. A cada laço, deverá ser incrementado em 1 a variável utilizada para contabilizar a opção escolhida na iteração. Ao final, deverá ser mostrado na tela a quantidade de vezes em que se escolheu as letras “A”, “B”, “C”, “D”, “E” e “F”. Também deverá ser mostrada a quantidade de vezes em que se escolheu uma letra diferente.

88 Módulo III – Estrutura Condicional
program calculadora; uses crt; var opcao:char; begin repeat clrscr; readln(opcao); case opcao of '1': begin writeln('Soma'); end; 'f': writeln('Fim'); delay(2000); until(opcao='f'); end.

89 Módulo III – Estrutura Condicional
Operadores Lógicos Tabela E Tabela OU Tabela Não V e V = V V ou V = V Não V = F V e F = F V ou F = V Não F = V F e V = F F ou V = V F e F = F F ou F = F

90 Módulo III – Estrutura Condicional
Ex Operadores Lógicos em PASCAL IF (X > 5) AND (X < 10) Then writeln (‘Número entre 5 e 10’) Ex Operadores Lógicos em C &&, || e ! Significam respect E, OU, NÃO If ((X > 5) && (X < 10)) cout << “Número entre 5 e 10”

91 Módulo III – Estrutura Condicional
Exercícios: - Para as questões a seguir, descreva o algorítmo e em seguida implemente em C# Mostre o maior de dois números lidos Receba três números do teclado e os mostre em ordem crescente Receba um número inteiro e diga se é PAR ou IMPAR Mostre o Menu de opções a seguir e realize as operações: Menu de opções Somar dois números Calcule a raiz quadrada de um número

92 Módulo III – Estrutura Condicional
Exercícios: Para as questões a seguir, descreva o algorítmo e em seguida implemente em C# Mostre a data e a hora do sistema nos seguintes formatos: dia/mês/ano e hora:minuto:segundo Altere a questão anterior para escrever o mês por extenso Determine e mostre a maior de duas datas lidas. Leia dia, mês e ano inteiros para cada data a ser comparada

93 Módulo III – Estrutura Condicional
Exercícios: Para as questões a seguir, descreva o algorítmo e em seguida implemente em C# Faça um programa que leia a hora e minutos iniciais de um jogo; a hora e minutos finais de um jogo e em seguida mostre a duração do jogo Faça um programa que receba o código correspondente ao cargo de um funcionário e seu salário atual e mostre o cargo, o valor do aumento e seu novo salário, conforme a tabela a seguir: Código Cargo Percentual de aumento 1 escriturario 50% 2 secretário 35% 3 caixa 20% 4 gerente 10% 5 diretor sem aumento

94 Módulo III – Estrutura Condicional
Exercícios: Para as questões a seguir, descreva o algorítmo e em seguida implemente em C# Faça um programa que apresente o menu de opções a seguir, permita ao usuário escolher a opção desejada, receba os dados necessários e mostre o resultado Menu de opções: 1. Imposto 2. Novo Salário 3. Classificação

95 Módulo III – Estrutura Condicional
Exercícios: Na opção 1: receber o salário de um funcionário, calcular e mostrar o valor do imposto usando as regras: Salários Percentual do Imposto < R$ 500,00 5% >= 500 <= % > %

96 Módulo III – Estrutura Condicional
Exercícios: Na opção 2: receber o salário de um funcionário, calcular e mostrar o valor do novo salário usando as regras: Salários Aumento > R$ 1.500,00 R$ 25,00 >= 750 <= ,00 < ,00

97 Módulo III – Estrutura Condicional
Exercícios: Na opção 3: receber o salário de um funcionário e mostrar sua classificação usando a tabela a seguir: Salários Classificação <= R$ 700,00 Mal remunerado > 700,00 Bem remunerado

98 Módulo IV – Estrutura de Repetição
4.1 Estrutura de Repetição para número definido de repetições (estrutura para) É usada quando se sabe o número de vezes em que um trecho de algorítmo é repetido. PARA I <- valor_inicial ATÉ valor_final FAÇA comando1 O comando1 será executado utilizando a variável I como controle, cujo conteúdo irá variar de valor_inicial até valor_final O incremento a cada laço é de um em um. Ou seja, o valor de I é acrescido de 1 a cada repetição na estrutura

99 Módulo IV – Estrutura de Repetição
4.1 Estrutura de Repetição para número definido de repetições (estrutura para) em Portugol PARA J <- valor_inicial ATÉ valor_final FAÇA INÍCIO comando1 comando2 FIM Os comandos 1 e 2 serão executados utilizando a variável J como controle, cujo conteúdo vai variar de valor_inicial até valor_final

100 Módulo IV – Estrutura de Repetição
4.1 Estrutura de Repetição para número definido de repetições (estrutura para) em Fluxograma

101 Módulo IV – Estrutura de Repetição
4.1 Estrutura de Repetição para número definido de repetições (estrutura for) em C# for ( int counter = 1; counter <= 5; counter++ ) Incremento da variável de controle Em cada laço Condição de Permanência no laço Palavra reservada for Nome da variável de controle Último valor da variável de controle Valor inicial da variável de controle

102 Módulo IV – Estrutura de Repetição
4.1 Estrutura de Repetição para número definido de repetições (estrutura for) em C# using System; class ForCounter { static void Main( string[] args ) // inicialização, condição de repetição e incremento // estão inclusas na estrutura de repetição for for ( int counter = 1; counter <= 5; counter++ ) Console.WriteLine( counter ); }

103 Módulo IV – Estrutura de Repetição
4.2 Estrutura de Repetição para número indefinido de repetições e teste no início (estrutura enquanto) É utilizada quando não se sabe o número de vezes em que um trecho de algorítmo é repetido, embora também possa ser utilizado quando se sabe esse número Existem situações em que o teste condicional da estrutura de repetição, que fica no início, resulta em falso na primeira comparação. Neste caso os comandos dentro da estrutura não são executados

104 Módulo IV – Estrutura de Repetição
4.1 Estrutura de Repetição demonstrada em um fluxograma

105 Módulo IV – Estrutura de Repetição
4.2 Estrutura de Repetição para número indefinido de repetições e teste no início (estrutura enquanto) ENQUANTO condição FAÇA Comando1 Enquanto a condição for Verdadeira o comando1 será executado

106 Módulo IV – Estrutura de Repetição
4.2 Estrutura de Repetição para número indefinido de repetições e teste no início (estrutura enquanto) Exemplo: int produto = 2; while ( produto <= 1000 ) produto = 2 * produto; Console.WriteLine( “O produto final é: “ + produto ); Enquanto a condição for Verdadeira o comando1 será executado

107 Módulo IV – Estrutura de Repetição
4.2 Estrutura de Repetição para número indefinido de repetições e teste no início (estrutura enquanto) ENQUANTO condição FAÇA INÍCIO comando1 comando2 comando3 FIM Enquanto a condição for Verdadeira o comando1, comando2 e comando3 serão executados

108 Módulo IV – Estrutura de Repetição
4.2 Estrutura de Repetição para número indefinido de repetições e teste no início (estrutura enquanto) Exemplo: int produto = 2; int laco = 0; while ( produto <= 1000 ) { // bloco de comandos laco = laco + 1; Console.WriteLine( “No laço “ + laco + “ O produto é: “ + produto); produto = 2 * produto; } Console.WriteLine( “O produto final é: “ + produto );

109 Módulo IV – Estrutura de Repetição
4.2 Estrutura de Repetição para número indefinido de repetições e teste no início (estrutura enquanto) Exercício: Faça um algorítmo para ler as notas dos alunos de uma turma com um número qualquer de alunos. Contabilize a quantidade de alunos que tiveram nota >=5 e <7 em um grupo; os alunos que tiveram nota < 5 em outro grupo; os alunos que tiveram nota >=7 e <8 em outro grupo; por fim os alunos com nota >= 8 em outro grupo. Ao final da execução do algorítmo, mostre a quantidade de alunos em cada grupo e o percentual da turma em cada grupo.

110 Módulo IV – Estrutura de Repetição
4.2 Estrutura de Repetição para número indefinido de repetições e teste no início (estrutura enquanto) Ex.: X <- 1 Y <- 5 ENQUANTO X < Y FAÇA INÍCIO X <- X + 2 Y <- Y + 1 FIM

111 Módulo IV – Estrutura de Repetição
4.3 Estrutura de Repetição para número indefinido de repetições e teste no final (estrutura repeat until ou do … while) É usada quando não se sabe o número de vezes em que um trecho do algorítmo deve ser repetido, embora também possa ser utilizada quando se sabe o número Os comandos dentro da estrutura (laço) serão executados pelo menos uma vez, já que a condição se encontra no final

112 Módulo IV – Estrutura de Repetição
4.3 Estrutura de Repetição para número indefinido de repetições e teste no final (estrutura repeat until ou do … while) REPITA comandos ATÉ condição Repita os comandos até a condição tornar-se Verdadeira

113 Módulo IV – Estrutura de Repetição
4.3 Estrutura de Repetição para número indefinido de repetições e teste no final (estrutura repeat until ou do … while) X <- 1 Y <- 5 REPITA X <- X + 2 Y <- Y + 2 ATÉ X >= Y

114 Módulo IV – Estrutura de Repetição
4.3 Estrutura de Repetição para número indefinido de repetições e teste no final (estrutura repeat until ou do … while) FAÇA comandos ENQUANTO condição Repita os comandos até a condição for Verdadeira

115 Módulo IV – Estrutura de Repetição
4.3 Estrutura de Repetição para número indefinido de repetições e teste no final (estrutura do … while) em C# using System; class DoWhileLoop { static void Main( string[] args ) int counter = 1; do Console.WriteLine( counter ); counter++; } while ( counter <= 5 ); } // Fim do método Main } // Fim da Classe DoWhileLoop


Carregar ppt "Fundamentos da Programação de Computadores"

Apresentações semelhantes


Anúncios Google