Alura > Cursos de Programação > Cursos de C e C++ > Conteúdos de C e C++ > Primeiras aulas do curso C++: Conhecendo a linguagem e a STL

C++: Conhecendo a linguagem e a STL

Começando com a linguagem - Apresentação

Boas vindas! Sou o instrutor Gabriel Fernandes.

Neste curso de Introdução à Linguagem C++ elaboraremos dois projetos.

O primeiro é o Jogo da Adivinhação; o computador seleciona um número aleatório de 0 a 99 e devemos descobrir qual é este número em menos tentativas possíveis. Começamos escolhendo o nível de dificuldade para darmos um primeiro chute.

Em seguida, o sistema indica se o valor correto é maior ou menor do que aquele que tentamos em cada oportunidade, para assim continuarmos até acertarmos.

Dependendo da quantidade de tentativas, recebemos uma pontuação. Caso tivermos escolhido um nível que permita apenas uma certa quantia de chutes errados e esta for excedida, perdemos a rodada.

Para realizar este trabalho, usamos o Visual Studio Code para programar em C++. Aprenderemos neste percurso as funções de entrada e saída de dados - cin e cout - além da formatação de quebras de linha e outros tipos novos de variáveis, como const e bool. Revisaremos os conceitos aprendidos anteriormente em demais cursos de programação nesta linguagem, como a função de números aleatórios srand e rand, bem como contas com doubles ou números reais através da função de valor absoluto abs.

Veremos outras questões de C++, como a formatação de saída de um valor real impresso com duas casas após a vírgula por meio das funções precision e fixed. Também aprenderemos a imprimir um número real em notação científica.

O segundo projeto é o Jogo da Forca; a partir de um banco de palavras, o computador seleciona uma que devemos adivinhar. Nas tentativas, temos que chutar uma letra que compõe o vocábulo, obtendo um retorno positivo ou negativo até completarmos os espaços disponíveis. Ao final, se ganharmos o jogo, o sistema nos pergunta se queremos adicionar uma nova palavra ao banco e, caso quisermos, podemos inserir um novo vocábulo.

Neste curso, também aprenderemos alguns tipos mais complexos da linguagem C++ como string, usado para armazenar linhas ou palavras, passando por map que funciona como um dicionário e vetores dinâmicos vector, entre outras features.

Mais adiante em nossas aulas, abordaremos com maior profundidade a leitura e impressão de valores em arquivos usando ofstream e ifstream, ou seja, adicionar ou ler uma palavra de um arquivo que não é o programa original.

Para este curso, é muito importante que você possua uma base de conhecimento prévia em Linguagem C, então recomendamos fortemente que faça os cursos anteriores que podem ser acessados neste link.

Vamos lá!

Começando com a linguagem - Primeiro Programa

Para começar, usamos o editor de texto Visual Studio Code.

Criamos um arquivo para nosso programa indo em "File > New File" e salvamos como jogodaadivinhacao.cpp no Desktop. Para ser lido, a extensão deve ser .cpp, sigla para C plus plus.

Assim que nomeamos o documento, o ícone do C++ já aparece para confirmar o reconhecimento e a linguagem na qual o arquivo será lido.

O primeiro passo para construção do jogo é fazer com que uma mensagem de boas vindas apareça ao usuário quando este o acessa, podendo ter uma moldura feita de asteriscos, ficando mais interessante.

Escrevemos a função principal int main() e, para imprimir o texto ao terminal, inserimos o comando de saída de dados cout. Não se esqueça de adicionar aspas em cada linha para assinalar o texto a ser mostrado.

Para indicar que cout é uma função padrão, escrevemos standard antes desta, abreviando a sentença para std::cout. Copiamos o trecho para as demais linhas da mensagem.

Sempre devemos terminar as linhas com ponto e vírgula ";", da mesma maneira que fazemos em C.

int main (){
    std::cout << "***************************************";
    std::cout << "* Boas vindas ao Jogo da Adivinhação! *";
    std::cout << "***************************************";
}

Abrimos o terminal para compilar. Navegamos pela pasta que contém o programa escrevendo .ls após o usuário para nos localizarmos. Em seguida, escrevemos cd Desktop/ na linha seguinte e por fim, cd curso-cpp/ para localizar o arquivo do jogo. Para limpar o terminal sempre que necessário, inserimos clear.

Para realizar a compilação, adicionamos o comando g++ jogodaadivinhacao.cpp -o jogodaadivinhacao.out finalizando com a tecla "Enter". Logo notamos que há um erro, indicando que cout não é um membro de std.

Sempre que usamos o printf() em C, incluímos as bibliotecas importada correta escrevendo #include<stdio.h>. Então, na linguagem C++, o apontamento de erro significa que estamos utilizando uma função sem a inclusão da fonte.

Voltamos ao editor de texto para resolver o problema. Devemos escrever a sintaxe #include <iostream> acima de todo bloco de código, assinalando a entrada, saída e fluxo padrão de dados em C++.

Retornamos ao terminal para recompilar nosso programa. Limpamos o texto e reescrevemos o comando g++ jogodaadivinhacao.cpp -o jogodaadivinhacao.out e tecle "Enter", seguido de ./jogodaadivinhacao.out na linha subsequente.

Notamos que nossa mensagem foi apresentada em uma única linha contínua, diferente do que planejamos na visão de uma moldura de asteriscos.

Resolvemos dando uma quebra de linha através do marcador de final << std::endl; nas três. Salvamos o código e compilamos novamente para constatar se atingimos o resultado esperado.

Há grande repetição de comandos std tornando o bloco de códigos muito grande. Para simplificar, devemos indicar ao programa que usaremos funções padrões C++ escrevendo using namespace std; logo após a biblioteca. Desta forma:

#include<iostream>
using namespace std;

int main (){
    cout << "***************************************" << endl;
    cout << "* Boas vindas ao Jogo da Adivinhação! *" << endl;
    cout << "***************************************" << endl;
}

Executamos mais uma vez para conferir.

Começando com a linguagem - Armazenando um número secreto

Agora que temos noção sobre a impressão de valores em C++, podemos avançar.

O próximo passo é fazer o computador armazenar os valores que serão os números secretos de 0 a 99 em nosso jogo. Para isso, devemos criar variáveis inteiras inserindo-as no bloco com um valor de exemplo int numero_secreto = 42;. Depois, imprimimos a mensagem "O número secreto é 42. Não conte para ninguém!" com o comando que já aprendemos.

Este valor é variável, então precisamos adicionar uma função que acompanhe a variação na frase impressa. Não basta somente substituir com o nome da variável, é preciso que o sistema entenda que deve apresentar o valor na mensagem, pois tudo que escrevemos entre aspas será exibido exatamente da forma como está escrito. Logo, devemos quebrar a frase retirando "42" desta, separando as partes constantes com aspas, e substituindo por << numero_secreto <<.

#include<iostream>
using namespace std;

int main (){
    cout << "***************************************" << endl;
    cout << "* Boas vindas ao Jogo da Adivinhação! *" << endl;
    cout << "***************************************" << endl;

    int numero_secreto = 42;
    cout << "O número secreto é" << numero_secreto << ". Não conte para ninguém!" << endl;
}

Retornamos ao terminal, escrevemos ./jogodaadivinhacao.out para compilar e vemos que o valor qualquer escrito no programa é apresentado. Faça testes alterando o valor do número secreto.

Sobre o curso C++: Conhecendo a linguagem e a STL

O curso C++: Conhecendo a linguagem e a STL possui 231 minutos de vídeos, em um total de 53 atividades. Gostou? Conheça nossos outros cursos de C e C++ em Programação, ou leia nossos artigos de Programação.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda C e C++ acessando integralmente esse e outros cursos, comece hoje!

Plus

De
R$ 1.800
12X
R$109
à vista R$1.308
  • Acesso a TODOS os cursos da Alura

    Mais de 1500 cursos completamente atualizados, com novos lançamentos todas as semanas, emProgramação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

Matricule-se

Pro

De
R$ 2.400
12X
R$149
à vista R$1.788
  • Acesso a TODOS os cursos da Alura

    Mais de 1500 cursos completamente atualizados, com novos lançamentos todas as semanas, emProgramação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

  • Luri powered by ChatGPT

    Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com Luri até 100 mensagens por semana.

  • Alura Língua (incluindo curso Inglês para Devs)

    Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.

Matricule-se
Conheça os Planos para Empresas

Acesso completo
durante 1 ano

Estude 24h/dia
onde e quando quiser

Novos cursos
todas as semanas