Programação em C# - Exercício 1: Entradas e Saídas
Visão Geral
Certifique-se de que suas ferramentas estejam instaladas e que você possa compilar e executar um programa simples em C#.
C# (pronuncia-se C-Sharp) é muito semelhante a outras linguagens de programação procedimentais ou orientadas a objetos. Então se você aprendeu a programar em uma delas, você deve ser capaz de aproveitar os conceitos básicos que você já conhece e se concentrar nas pequenas diferenças na sintaxe.
Você já deve estar familiarizado com programação. Este curso pressupõe que você esteja familiarizado com variáveis, laços (loops), listas (lists), condicionais (instruções if) e funções (functions). Se não estiver, você não está preparado para começar este curso.
Material de Preparação
Este material descreverá algumas das principais diferenças entre C# e Python, destacando os elementos necessários para concluir esta tarefa.
Além deste material, você deve considerar a Web como uma fonte importante de aprendizado. Quando você sabe o que fazer, mas não como fazê-lo em uma determinada linguagem, é fácil pesquisar por "instrução print em C#" ou "loop for em C#" ou até mesmo algo mais complicado como "abrir arquivo em C# e ler linha por linha". O StackOverflow em particular é um ótimo site para ajudar você com esses tipos de perguntas.
Fundamentos da Linguagem C#
C# usa os mesmos conceitos que Python usa quando se trata de variáveis, laços, expressões e assim por diante. Aqui estão algumas diferenças que você precisa saber:
Tipos Definidos
Em C#, quando uma variável é declarada, seu tipo de dado deve ser especificado. O computador então sabe quanta memória alocar para ele. Depois que o tipo de uma variável é definido, ele não poderá ser alterado posteriormente.
Você declara uma variável especificando o tipo. Depois, quando você usar a variável, não precisará especificar o tipo novamente.
int x;
x = 5;
Console.WriteLine(x);
Você também pode declarar uma variável e inicializá-la usando uma única instrução:
int x = 5;
Console.WriteLine(x);
Os tipos comuns de variáveis internas são:
int– Inteiros (números inteiros, positivos e negativos)string– Cadeia de Caracteres (sequência de caracteres, incluindo letras, números ou símbolos)float– Números de ponto flutuante (números que usam decimais)double– Números de ponto flutuante de precisão dupla (comofloat, exceto que ocupa o dobro de memória, então pode armazenar números maiores ou números com mais casas decimais)bool- Variáveis booleanas (verdadeiro ou falso)
Input e Output (Entradas e Saídas)
Em C#, para exibir (print) ou escrever algo como saída no console, você usa a função
Console.WriteLine("")
Python
print("Olá, Mundo!")
C#
Console.WriteLine("Olá, Mundo!");
Console.WriteLine("") exibirá, ou escreverá, uma linha completa, incluindo a nova linha. Se você não
quiser uma nova linha no final, você pode usar Console.Write("") para exibir o texto sem uma nova linha
depois.
Console.Write("Não haverá uma nova linha depois disso.");
Para obter a entrada do usuário em C#, use a função Console.ReadLine(), que retornará uma string
proveniente do que o usuário digitou. Observe que é uma string (não um número inteiro ou de ponto
flutuante) e que você precisa usar Console.ReadLine(), e não
Console.Read().
Além disso, esteja ciente de que, diferentemente da input (entrada) em Python, você não fornece o
texto do comando para a função Console.ReadLine() em C#, então você deve exibi-lo primeiro com
Console.Write("").
Python
cor = input("Qual sua cor favorita?")
C#
Console.Write("Qual é sua cor favorita? ");
string cor = Console.ReadLine();
As Chaves Definem Blocos
Em C#, as chaves {} definem o corpo de uma instrução if ou de uma função. Em Python, o
corpo é definido por recuo. Em C#, você também recua o corpo do código, mas isso é apenas uma convenção; o
mecanismo real para definir o corpo são as chaves {}.
Além disso, em C#, você não usa dois-pontos : para iniciar o corpo do código, e ao
usar instruções if, você deve sempre colocar a condição entre parênteses ().
Python
if x > y:
print("maior")
C#
if (x > y)
{
Console.WriteLine("maior");
}
As Instruções Terminam em Ponto e Vírgula
Como você deve ter notado acima, em C#, as instruções terminam com ponto e vírgula ; Normalmente,
uma instrução terá uma linha; porém, às vezes você pode ter uma instrução longa que se estende por várias linhas
até que o ponto e vírgula ; seja alcançado.
A regra para terminar instruções com ponto e vírgula se aplica a instruções como, por exemplo, chamar uma função,
declarar uma variável, definir uma variável e assim por diante. Não coloque ponto e vírgula entre
a condição de uma instrução if e seu corpo, ou o nome de uma função e seu corpo.
Interpolação de Strings
Em C#, se você quiser usar uma variável dentro de uma string, comece a string com um cifrão $, da
mesma forma que em Python você inicia uma string formatada com um f.
Python
escola = "BYU-Idaho"
print(f"Estou estudando na {escola}.")
C#
string escola = "BYU-Idaho";
Console.WriteLine($"Estou estudando na {escola}.");
Demonstração em Vídeo
Esses fundamentos são demonstrados no vídeo a seguir:
Esses vídeos mencionam o uso do comando dotnet new para criar um projeto. No entanto, neste curso,
você receberá um protótipo de projeto já no repositório de modelos do GitHub, então você não precisa se
preocupar com isso.
Além disso, como você verá, o comando dotnet new insere um namespace em torno do seu
código. Isso é importante para projetos maiores. Contudo, para manter as coisas simples, os modelos iniciais que
usaremos nesta aula não usarão namespaces.
Link Direto: ▶️Fundamentos de C# (11 minutos)
O que são todas as outras coisas? (Opcional)
Como você deve ter percebido, ao iniciar um novo programa em C#, há vários outros códigos na tela. Você
aprenderá mais sobre o que todas essas coisas fazem com mais detalhes à medida que o curso avançar. Neste ponto,
basta saber que o programa começa com a função Main.
Se você quiser uma breve visão geral do que cada um desses componentes básicos do programa fazem, assista ao seguinte vídeo:
Link Direto: ▶️Componentes Básicos de um Programa em C# (4 minutos)
Instruções da Tarefa
Atividades de Aprendizagem
Como você verá, cada atividade de aprendizagem neste curso terá dois componentes. Eles começam com um material de preparação para ler ou assistir e, em seguida, há uma pequena tarefa de programação onde você pratica os conceitos que acabou de ler.
Você precisa terminar esta tarefa e depois retornar ao Canvas para relatar seu trabalho.
Agora que você viu a sintaxe básica do C#, conclua a seguinte tarefa. Este foi um programa que você concluiu anteriormente em CSE 110, mas neste caso, você desenvolverá o programa em C#.
Obtendo o Modelo do Projeto
- Caso ainda não tenha feito isso, consulte as instruções na página S01 - Configurações: Ferramentas para garantir que seu computador esteja preparado para este curso e que você tenha clonado o modelo de projeto em seu computador.
- Abra seu projeto no VS Code.
- Em seguida, no VS Code, navegue até a pasta
semana01/Exercicio1e clique emProgram.cs. Este é o arquivo que você editará para este projeto. - No menu “Executar e Depurar", selecione "Semana01: Exercicio1" no menu suspenso e clique no botão verde de
reprodução
para executar o programa. Na janela do terminal, deve ser exibido o texto
Olá, Mundo! Este é o Projeto Exercicio1.
Especificação do Programa
Aqui estão as instruções que você viu anteriormente em CSE 110 que usaremos como especificação do nosso programa:
Visão Geral
Uma frase inesquecível dos filmes de James Bond é aquela quando ele se apresenta falando “Meu nome é Bond, James Bond”. Para esta tarefa você vai escrever um programa que vai pedir seu nome e vai repeti-lo desta forma.
Tarefa
Peça que o usuário digite o seu nome. Em seguida, peça o sobrenome dele. Mostre o texto em apenas uma linha dizendo: “Seu nome é sobrenome, nome, sobrenome”, dessa maneira:
Qual é o seu nome? Scott Qual é o seu sobrenome? Burton Seu nome é Burton, Scott Burton.Qual é o seu nome? Brigham Qual é o seu sobrenome? Young Seu nome é Young, Brigham Young.Lembre-se de que ele deve ficar exatamente com essa resposta! Isso significa que você precisa deixar o espaçamento, a vírgula e o ponto da mesma forma utilizada nos exemplos.
Completar o Programa
Desenvolva e teste o programa conforme definido acima.
Aviso: Nunca clique em “Depurar Assim Mesmo".
Se houver um erro no seu programa e você tentar executá-lo, o VS Code informará que não é possível criar uma nova versão do programa para execução. Mas ele pode encontrar a última versão que construiu o programa com sucesso. Se você clicar em “Depurar Assim Mesmo", a versão antiga será executada.
Usando “Depurar Assim Mesmo", você estará executando um programa diferente do seu código atual. Isso causa muita confusão, porque você pode fazer alterações no seu código, mas o programa não mostra as alterações.
Para evitar essas armadilhas, você nunca deve clicar em “Depurar Assim Mesmo". Em vez disso, clique em "Anular" e rastreie seus erros, ou clique em "Mostrar Erros" para ir diretamente até eles.
Exemplo de Solução
Quando terminar seu programa, veja o exemplo de solução para compará-la com a sua.:
Se você estiver tendo dificuldades com este e outros programas futuros, sinta-se à vontade para olhar o exemplo de solução para ajudá-lo a concluí-lo. Lembre-se, porém, de que o objetivo é que você aprenda a desenvolver o código por conta própria, e muitas vezes aprendemos isso melhor quando trabalhamos em uma série de coisas que não funcionam, antes de encontrar aquela que funciona. Então não veja o exemplo de solução tão cedo.
Além disso, você deve digitar cada linha de código você mesmo. Não copie e cole este código. É importante para seu aprendizado que você pratique a escrita de cada linha de código.
Obtendo Ajuda
Se precisar de ajuda, por favor, pergunte no Microsoft Teams!
Além disso, se você ainda estiver com dificuldades, o vídeo a seguir explica toda essa tarefa do início ao fim, incluindo o envio para o GitHub.
Link Direto: ▶️Passo a Passo do Exercício 1 (12 minutos)
Enviando
Retorne ao Canvas e responda ao questionário correspondente.