Neste módulo você aprenderá sobre os recursos que a linguagem C# fornece para o desenvolvimento dos seus algoritmos. Observará que os operadores são de extrema importância para o desenvolvimento da linguagem C#, além de que esses operadores nos remetem a questão de funções básicas até as mais complexas na linguagem.

 

Observe as características desses operadores:

Seguem basicamente o mesmo conceito dos operadores dos operadores utilizados na matemática: soma, subtração, multiplicação e divição.

São responsáveis por retornar à relação entre duas variáveis.

É por meio deles que é possível fazermos a execução de determinados códigos apenas se todas as condições forem satisfeitas, ou caso desejado, se apenas uma das condições for satisfeita.

Funcionam com apenas um operando, ou seja, não necessita ser inserido entre dois termos.

 

Ao final do módulo, você também verá sobre as estruturas de controle, tais como: IF/ELSESWITCHWHILE e FOR.

Vamos lá!

 

Operadores Aritméticos

Os operadores aritméticos seguem basicamente o mesmo conceito dos operadores utilizados na matemática, como a soma, subtração, multiplicação e divisão. Seguem também os critérios de preferência na solução, como as operações entre parênteses serem realizadas antes que as demais operações.

Um cuidado que você deve ter é em relação a operação com expoentes, que precisa ser realizada da seguinte forma:

 

Math.pow(X,2)

 

Nessa operação elevamos ao quadrado a variável ‘X’, ou seja, primeiramente a base e depois o expoente. Além disso, a operação realizada por meio do símbolo de porcentagem (%) fornecerá o resto de uma divisão. Observe os exemplos:

Na Prática

25 % 2 - Retorna 1, ou seja, o resto da divisão por 2 é '1'.
24 % 2 - Retorna 0, ou seja, o resto da divisão por 2 é '0'.

 

Perceba que a lógica de atribuição das operações aritméticas é feita da mesma forma que na matemática, tendo um cuidado apenas para cálculos de exponenciação e com acréscimo da operação realizada por meio do ‘%’ que retornará o resto da divisão.

 

Operadores Relacionais

Os operadores relacionais são responsáveis por retornar à relação entre duas variáveis. Essa relação é retornada na forma de verdadeiro ou falso, por exemplo, determinada variável é maior que outra, ou menor, dentre outras relações.

Veja um exemplo de como é realizada a relação entre variáveis.

 

 

 

Inicialmente criamos duas variáveis que indicam a nota de um determinado aluno, em seguida, verificamos se a primeira nota foi maior que 7 e se na segunda nota ele tirou 10.

 

Para ajudá-lo no início de sua jornada, na tabela, a seguir, são apresentados alguns operadores relacionais que você pode utilizar em seus códigos:

 

Podemos, também, modificar o algoritmo para que a nota a ser verificada para estas condições relacionais seja dada pelo usuário por meio do console, para isso, observe no código abaixo, como é feito utilizado o ‘ReadLine’.

É interessante realizar alguns acréscimos no seu código e verificar o funcionamento para outras operações relacionais, como por exemplo, se o aluno passou por média, se ele foi reprovado (nota menor que 4) ou se está em recuperação (nota menor que 6).

 

 

A utilização de operadores relacionais é tão importante quanto a utilização de operadores aritméticos, fazendo relação entre duas ou mais variáveis e proporcionando uma melhor estrutura para execução do algoritmo.

 

Operadores Lógicos

Os operadores lógicos são de grande importância para a montagem da lógica dos algoritmos desenvolvidos, por meio deles é possível fazer execução de determinados códigos apenas se todas as condições forem satisfeitas, ou caso desejado, se apenas uma das condições for satisfeita.

 

 

Veja o comportamento de operadores lógicos por meio de um exemplo prático:

Confira aqui o que foi abordado no vídeo.

 

Vídeo

 

Como vimos no vídeo, os operadores lógicos, utilizados para atribuir condições que deverão ser satisfeitas para que determinadas partes do algoritmo sejam executadas, estão apresentados na seguinte tabela:

 

Perceba que a descrição de cada um deles corresponde basicamente à condição necessária, por exemplo, o operador ‘&&’ indica que determinada tarefa só será realizada se todas as condições forem satisfeitas, o operador ‘||’, será realizado se pelo menos uma das condições forem satisfeitas e o operador ‘!’ será realizado caso contrário da condição.

A utilização desses operadores é de extrema importância e é muito observada nos códigos já existentes, portanto, busque sempre entender o seu funcionamento e a sua lógica.

 

Operadores Unários

Na programação em C#, ainda há a possibilidade de utilização dos operadores unários, que funcionam com apenas um operando, ou seja, não necessita ser inserido entre dois termos. Alguns deles são muito utilizados durante a programação: como os operadores unários de incremento e decremento. Porém, este tipo de operador pode não ser recomendado, pois sua utilização em alguns casos torna o entendimento do código mais complicado.

 

Para contribuir com a sua compreensão, veja o vídeo a seguir:

Confira aqui o que foi abordado no vídeo.

Vídeo

 

Até aqui você estudou os conceitos gerais sobre os operadores e suas funcionalidades, e como é preciso ficar atento as particularidades de cada um dos códigos. Siga adiante para conhecer as estruturas de controle if/else e como elas são importantes dentro das linhas de comando dos códigos de C#. Acompanhe!

 

Estrutura de controle – if/else 

Você conhecerá agora, outras ferramentas essenciais para o desenvolvimento dos programas em todo tipo de linguagem, que são as estruturas de controle.

Como o próprio nome diz, são estruturas que servem para o controle da execução do seu algoritmo, ou seja, por meio delas é possível fazer a organização e condições para que determinada parte do código seja executada.

A primeira estrutura que você estudará é a ”If” (do inglês, “SE”), essa estrutura irá realizar determinada ação SE a condição que for imposta, colocada entre parênteses, for satisfeita.

 

Lembre-se! As ações que serão executadas devem estar entre as chaves que são abertas após a imposição das condições.

 

Observe, no código abaixo, um exemplo da utilização dessa estrutura. Note que foram criados três variáveis com três números diferentes e são testadas duas condições:

 

Neste código são criados três variáveis com três números diferentes e são testadas duas condições:

A condição é de o ‘n1’ ser menor que ‘n2’, como a condição verdadeira, o código entrará e irá fazer a soma de n1+n2.

Possui a mesma condição que a anterior, só que para ‘n3’ menor que ‘n2’, como a condição não é satisfeita, o programa não prossegue para execução das ações que estão dentro das chaves.

 

Para complementar a utilização do “if”, existe ainda o ‘else‘, equivalente a “SE NÃO“, ou seja, são as ações que serão executadas se as condições iniciais não forem satisfeitas.

Observe abaixo, a melhoria realizada no código anterior, fazendo uso dessa estrutura mais completa, vamos lá!

 

Ao executar seu código, o resultado da compilação deve ser igual a este.

 

Condição 1 é satisfeita !!

Resultado da soma é 14

Condição 2 não é satisfeita!!.

 

A estrutura ‘if/else’ é uma das mais utilizadas, pois apresenta uma relação de controle que permite a realização de uma tarefa caso uma condição seja satisfeita e caso não seja satisfeita, assim como permite também que ocorra a realização de outra tarefa, fazendo com que se tenha uma economia de memória na execução do código.

 

Estrutura de controle – Switch

‘Switch’ é semelhante ao que é realizado pela estrutura ‘if’, mas com uma diferença que funciona a partir de “escolhas”. Essa estrutura retorna um valor, seja ele numérico ou outro, de acordo com a necessidade do programador.

Temos como exemplo um restaurante que deseja avaliar os seus pratos e enviar para todos os seus clientes uma entrevista para que eles deem a nota desejada.

Observe no código abaixo, ele demonstra esse projeto sendo realizado por meio da linguagem C#.

 

A estrutura ‘switch’, apesar de ser menos utilizada, também apresenta suas vantagens, podendo ser aproveitada quando se deseja fazer a realização de determinadas ações, caso condições para uma mesma variável seja atendida, no exemplo, foi realizado para a variável ‘nota’, fazendo a impressão na tela da frase correspondente a nota dada pelo cliente.

 

Estrutura de controle – While

A estrutura ‘While‘ é uma estrutura de repetição, ou seja, determinada ação desejada pelo programador será repetida enquanto a condição é satisfeita.

Para que entenda de forma objetiva, utilizamos um código simples, mas que possibilita o pleno funcionamento dessa estrutura. Observe!

 

 

Neste exemplo, foi criada uma variável ‘n1’ com valor ‘1’, a condição dada pela estrutura ‘While‘ é que enquanto ‘n1′ for menor ou igual a ’15’ ele irá exibir na tela os números, resumindo, o programa fará a contagem de 1 a 15.

 

A estrutura ‘While’ também é muito utilizada no desenvolvimento dos algoritmos, pelo fato de ser uma ferramenta que permite a repetição de atividades até que determinada condição seja atendida, isso contribui bastante na criação de diversos códigos.

 

Estrutura de controle – For

A estrutura do tipo ‘for‘ (do inglês, “para”), como sua expressão já diz, é utilizada com objetivo de realizar ações para determinadas condições, funcionando da seguinte forma:

 

for (condição inicial; condição; incremento);

 

Então, tendo uma condição inicial dada pelo programador, as ações dentro da estrutura ‘for‘ serão realizadas até que a condição não seja atendida, sendo que em cada término da sequência de ações é realizado o incremento ou decremento da variável desejada.

 

Lembre-se! Não é obrigatório ter os três termos para que a estrutura ‘for’ funcione, podendo ser criada uma estrutura apenas com a condição necessária.

 

Na Prática

Conforme apresentado no exemplo anterior de contagem, você pode criá-lo novamente, só que dessa vez fazendo uso da estrutura 'for'. Veja como fica:

 

A ferramenta ‘for’ é interessante de ser utilizada na construção do algoritmo pois reúne a característica de fazer a realização de tarefas de acordo com condições atribuídas a ela, além de fazer a repetição dessas tarefas até que as condições sejam satisfeitas.

 

Parabéns! Você chegou ao final do módulo 2.

 

Aqui você pôde estudar os recursos oferecidos pela linguagem C# para o desenvolvimento dos algoritmos, como operadores e estruturas de controle. Depois de analisar os operadores, chegou a hora de realizar a junção de tudo o que estudou até aqui e colocar em prática.

No próximo módulo, vamos destacar os pontos mais importantes para o desenvolvimento final de seu projeto. Vamos lá?

 

 

Módulo 3 – Desenvolvimento final