Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Comente sobre as finalidades do uso de funções na linguagem C, e quais as vantagens de utilização destes recursos. 2 Pense em um problema ou situação do dia-a-dia, descreva-o resumidamente, e crie, para seu problema, um programa usando o máximo do que foi ensinado nas aulas 1 a 3. Use, obrigatoriamente, entrada de dados, saída de dados, operadores aritméticos, além de outros recursos estudados. 3 Compare, ilustrando com exemplos, as estruturas if/else/if e switch, destacando as restrições de uso do switch. 4 Compare, ilustrando com exemplos, as estruturas for, while e do/while. 1 Denominamos função (subalgoritmo) a um conjunto de comandos que realiza uma determinada tarefa em um módulo dependente de código. A função é referenciada pelo programa principal através do nome atribuído a ela, e essa utilização visa modularizar um programa, coisa que é comum em programação estruturada. Podemos assim dividir um programa em várias partes (blocos), que possam ser logicamente compreendidos de forma isolada. As principais vantagens da Linguagem C são: -Portabilidade: pode ser compilada em várias plataformas; -Modularidade: Programador desenvolve suas próprias funções -Estruturada: procedimentos básicos= sequência, seleção e interação; -Simplicidade: conjunto pequeno de palavras reservadas, tornando aprendizado mais simples; -Rapidez: gera um executável compacto; -Linguagem de alto nível intermediário; -Não tem um propósito específico. 2 Ex: Programa que leia 2 números inteiros e imprima o maior: #include <stdio.h> #include <stdlib.h> int main () { int num1, num2, maior; printf("Entre com 2 numeros inteiros"); scanf("%d %d", &num1, &num2); if (num1 > num2) maior = num1; else maior = num2; printf("O maior numero e: %d", maior); system("pause"); return 0; } 3 Há situações que são necessárias testar uma sequência de condições para efetuar diferentes processamentos. Para isso, precisamos de uma estrutura seletiva da qual o único valor possível é o bit 1 ou 0, resumindo: retornar o valor VERDADEIRO ou FALSO. Em C/C++, como em muitas linguagens de programação, quem faz isso é o IF (se). Ou seja, se for tal coisa, faça isso! O ELSE é o caso contrário, ou seja, se for falso execute o que está no else. O operador IF é utilizado para avaliar o valor de uma condição booleana, podendo assumir apenas dois valores distintos: verdadeiro (true) ou falo (false). A estrutura fica da seguinte forma: SE ( condição) ENTÂO (faça algo). Ex: Podemos imaginar o caso de um programa de jogo onde no fim queremos imprimir na tela um comentário ao jogador conforme a sua performance. Vamos admitir que existe uma variável score (de tipo inteiro) que contém um valor entre 1 e 10. Conforme o valor do score vamos mostrar uma mensagem diferente : if (score >= 9) printf("Excelente !\n"); else if (score >= 7) printf("Muito bom !\n"); else if (score >= 4) printf("Pode tentar fazer melhor a próxima vez !\n"); else if (score >= 2) printf("Fraco !\n"); else printf("Muito fraco !\n"); A linguagem C possui uma instrução que facilita a escrita de condições múltiplas como descritas no exemplo anterior. Esta instrução é chamada SWITCH. A sequência de «if» anterior pode ser substituída por uma instrução switch : switch (score) { case 10: printf("O melhor !\n") case 9: printf("Excelente !\n"); break; case 8: case 7: printf("Muito bom !\n"); break; case 6: case 5: case 4: printf("Pode tentar fazer melhor a próxima vez !\n"); break; case 3: case 2: printf("Fraco !\n"); break; default: printf("Muito fraco !\n"); } O exemplo escrito com a instrução switch não é completamente igual à sequência de «if» anterior. A instrução switch permite a enumeração de vários casos e disponibiliza uma cláusula especial : default. Esta cláusula corresponde a «todos os outros casos». No caso da sequência de «if» se o valor do score for 1000 o programa imprimirá «Excelente !» enquanto no caso do switch imprimirá «Muito fraco !» porque o valor não se encontra em nenhum dos casos previstos. -Restrição no uso do switch : a expressão testada deve ser de tipo INTEIRO. Caso deseja comparar valores decimais, a única solução é usar if/else. Os valores indicados para cada caso devem ser constantes, não podem ser variáveis. 4 While, Do While e For são comandos que servem para manter uma porção do código executando repetidamente. Também conhecidos como estruturas de repetição, iterações ou loops, esses comandos mantém a execução até que seu argumento seja falso. -While: Esta instrução é usada quando não sabemos quantas vezes um determinado bloco de instruções precisa ser repetido. Com ele, a execução das instruções vai continuar até que uma condição seja verdadeira. A condição a ser analisada para a execução do laço de repetição deverá retornar um valor booleano. A estrutura principal de while é: while (comparação) { código que será executado } Ex: Código para contando de 1 a 10: <?php $nr = 1; while ($nr<=10){ echo ($nr . " "); $nr++; } ?> -Do/While: Tem quase o mesmo funcionamento que o while, a diferença é que com o uso dele teremos os comandos executados ao menos uma única vez. A estrutura principal de do/while é: do { código que será executado } while (comparação); Ex: Reescrevendo o código acima: <?php $nr = 1; do { echo ($nr . " "); $nr++; } while ($nr<=10) ?> - For: Também cria iterações (repetições) e tem o mesmo problema do while, mas diminui o risco de looping infinito porque for controla toda a variável, desde seu valor inicial até seu valor final. A estrutura principal de for é: for (valor inicial; comparação; modificação do valor) { código que será executado } Ou seja, diferentemente de while e do while que tinhamos que declarar a variável já contendo um valor ($nr = 1;) e dentro do bloco de execução incrementar esta variável ($nr++;), o for já faz tudo isso para nós. Ex: <?php for ($nr=1; $nr<=10; $nr++){ echo ($nr . " "); } ?>
Compartilhar