Anda di halaman 1dari 28

Csar Augusto Pessa

Sumrio
Objetivos
Condies if... else
Operadores unrios
Laos de repetio
while
do while
for
switch
Vetores e Matrizes
A estrutura foreach
Exerccios prticos no Visual Studio
Objetivos
Apresentar aos alunos as estruturas de
repetio da linguagem C#, utilizando
exemplos prticos e comparando-as com as
estruturas de repetio utilizadas no software
VisualG.

Realizar atividades prticas aplicando os


laos de repetio em estruturas de dados
complexas (vetores e matrizes).
Condies if... else
if (numero >=10) SE (numero >= 10) FACA
{
Console.WriteLine(a); ESCREVAL(a)
}
else SENAO
{
Console.WriteLine(b); ESCREVAL(b)
} FIMSE

C# Portugol
Operadores unrios
Assim como existem os operadores
aritmticos e operadores lgicos, a linguagem
C# tambm aceita a utilizao de operadores
unrios.

A vantagem de utiliz-los o ganho de


desempenho e reduo de cdigo devido a
sua forma compacta.
Operadores unrios
Operador Utilizao
+ Nmeros positivos

- Nmeros negativos

! Negao booleana

++ Pr-incremento: a varivel recebe o incremento e


depois verificada. Exemplo: ++x
++ Pr-incremento: a varivel verificada e depois recebe
o incremento. Exemplo: y--
-- Pr-decremento: a varivel recebe o decremento e
depois verificada. Exemplo: --y
-- Pr-decremento: a varivel verificada e depois
recebe o decremento. Exemplo: x++
(type)<varivel> Operador para apresentao de dados conforme um
tipo especificado. Exemplo (int)nome.
Laos de repetio
So blocos de cdigo que, seguindo uma
determinada condio, so executados por
mais de uma vez.

So especialmente teis em situaes onde


uma rotina deve se repetida de forma
incremental ou, at mesmo, quando o
sistema aguarda uma alterao de condio
ou comportamento do usurio para continuar
a sua execuo.
Laos de repetio - Exemplos
Criao de um menu que somente aceite que o
usurio selecione uma entre quatro opes.

Leitura de um cadastro de 11 jogadores para um


time de futebol.

Impresso de 200 certificados idnticos, com


apenas alterao do nome do aluno.

Controle de tempo ou condio para execuo


de uma tarefa/evento.
Laos de repetio - Exemplos
Escrita e leitura de dados em um vetor ou
matriz.

Leitura para importao de informao em uma


lista de arquivos.

Busca de informaes ou palavras chave em um


arquivo.

Criao de algoritmos de pesquisa inteligente


em bases de dados.
Laos de repetio while
while (media < 7) ENQUANTO (media < 7)
{ FACA
Console.WriteLine(...); ESCREVAL(...)
} FIMENQUANTO

C# Portugol
Laos de repetio do while
do REPITA
{
Console.WriteLine(...); ESCREVAL(...)
}
while(n1 % 2 == 0); ATE (n1 % 2 = 0)

C# Portugol
Laos de repetio for
for (int cont = 0; cont < 10; PARA cont DE 1 ATE 10 FACA
cont+1)
{
Console.WriteLine(cont + 1); ESCREVAL(cont + 1)
} FIMPARA
/*
Em C# no necessrio declarar
a varavel contador, isto feito
dentro do prprio for.
*/

C# Portugol
Laos de repetio switch
switch (opcao) ESCOLHA opcao
{
case 1:
Console.WriteLine(1"); CASO "1"
break; ESCREVAL(1)
... ...
default: FIMESCOLHA
Console.WriteLine(...");
break;
}

C# Portugol
Vetores
Vetor ou array, em ingls, uma estrutura que
permite armazenar informaes de forma
sequenciada.

Por exemplo, possvel criar uma lista de


nomes e armazen-los em uma nica varivel
do tipo vetor, contendo um ndice para identificar
cada um dos seus elementos.

Importante:
O ndice de um vetor sempre comea na posio 0.
Um vetor um objeto e, portanto, deve ser instanciado
por meio do comando new.
Vetor de nomes
Abaixo existe um vetor contendo 6 nomes.

Os nomes so armazenados de forma ordenada, como em uma


lista.

Todos os itens podem ser acessados por meio do ndice que


determina a posio do elemento dentro do vetor.

0 1 2 3 4 5

Joo Tiago Thas Yasmin Maria Carlos


Vetores
string[] nomes = new string[6]; nomes : vetor[1..6] de caractere
... ...
for (int i = 0; i < 6; i++)
para i de 1 ate 6 faca
{
leia(nomes[i])
nomes[i] = Console.ReadLine();
} fimpara
for (int i = 0; i < 6; i++) para i de 1 ate 6 faca
{ escreval(nomes[i])
Console.WriteLine(nomes[i]);
fimpara
}

C# Portugol
Matrizes
Uma matriz nada mais do que uma estrutura
encadeada de vetores, ou seja, se um vetor
permite a criao de uma lista de variveis do
mesmo tipo, uma matriz, permite a criao de
uma lista de vetores do mesmo tipo.

Visualmente uma matriz se parece com uma


tabela, possuindo elementos que so acessados
por meio das coordenadas de suas linhas e
colunas como em uma planilha eletrnica.
Matriz de alunos e notas

Nome do aluno Nota do aluno


Joo 8,9
Tiago 9,75
Thas 9,25
Yasmin 10
Maria 8,5
Carlos 8,0
Matriz (acesso a elementos)

Nome do aluno Nota do aluno


[0,0] [0,1]
[1,0] [1,1]
[2,0] [2,1]
[3,0] [3,1]
[4,0] [4,1]
[5,0] [5,1]
Matrizes
string[,] nomesNotas = new string[2,6]; nomes : vetor[1..2,1..6] de caractere
... ...
for (int i = 0; i < 6; i++)
para i de 1 ate 6 faca
{
for (int j = 0; j < 2; j++)
para j de 1 ate 2 faca
{ leia(nomes[i,j])
nomes[i,j] = Console.ReadLine();} fimpara
} fimpara
}

C# Portugol
Matrizes
string[,] nomesNotas = new string[2,6]; Criao de uma matriz de
... duas dimenses, ou seja,
linhas e colunas.
for (int i = 0; i < 6; i++)
{ O lao for est percorrendo
for (int j = 0; j < 2; j++) cada uma das 6 linhas e,
{ para cada linha, percorre
as duas colunas.
nomes[i,j] = Console.ReadLine();}
} Para controle desta
} navegao so utilizadas
as variveis i e j

C# Portugol
Laos de repetio foreach
O termo foreach pode ser traduzido de forma livre
como para cada.

Utilizado para percorrer colees e listas sem a


necessidade de incrementos ou decrementos.

Especialmente til para realizar a leitura em


colees cujo tamanho desconhecido.

No necessita de uma condio de validao


booleana (lgica) para terminar. O lao ser
abandonado automaticamente ao atingir o fim da
coleo.
Laos de repetio foreach
string[] alunos = new string[6];
...
for (int i = 0; i < 6; i++)
{
Console.WriteLine("Informe o nome do " + (i + 1) + " aluno:");
alunos[i] = Console.ReadLine();
}

foreach (string aluno in alunos)


{
Console.WriteLine(aluno);
}
Laos de repetio foreach
string[] alunos = new string[6]; Criao do vetor de string, j
... instanciado com 6 posies.
for (int i = 0; i < 6; i++)
{ O lao for ir percorrer todos os
Console.WriteLine("Informe o 6 elementos do vetor e
nome do " + (i + 1) + " aluno:"); preench-los com as
informaes lidas do console.
alunos[i] = Console.ReadLine();
} O lao foreach ir percorrer
todos os elementos do vetor
foreach (string aluno in alunos) alunos, independentemente de
{ seu tamanho. Isso ocorre
Console.WriteLine(aluno); porque foi definida uma varivel
do tipo string, chamada aluno,
} que representar o elemento
atual do vetor aps cada
passagem pelo lao.
Agradecimentos

Iconfinder
https://www.iconfinder.com

Find Icons
http://findicons.com
Dvidas?
Csar Augusto Pessa
capfg@hotmail.com

Anda mungkin juga menyukai