Introdução Bem-vindo Como Começar Meu Primeiro Programa     Resolvendo Problemas e Distribuindo Tranformando Dados Programas Interativos     Exercícios de Programação     Fazendo Games
Documentação Declarações     Procedimentos     Variáveis Construtores     Controle de Fluxo Expressões Bibliotecas     Print     IO     Random     Game Engine
Tutoriais Tutoriais Completos     Introdução à Programação     Guia Rápido     Exercícios de Programação     Programando Games

TUTORIAL: INTRODUÇÃO À PROGRAMAÇÃO


Essa série de tutorial é um curso completo de programação!





Sobre os Tutoriais

Os tutoriais de Introdução à Programação são uma série de tutoriais com o objetivo de te levar de zero conhecimento em programação até a proficiência – resolvendo problemas e usando todas as ferramentas disponíveis para programar de forma expressiva softwares de computadores!
Esses tutoriais estão dentro do Vizzcode, que pode ser baixado aqui.

O curso está dividido em 9 tutoriais completos, cada um cheio de recursos da programação para serem aprendidos:

A primeira parte da Série de Introdução à Programação vai te introduzir ao incrível mundo da programação. Você vai aprender conceitos importantes e também desenvolver seu primeiro programa de computador!

Depois disso, na parte 2 você vai aprender a tornar seus programas interativos ao ler dados do usuário. Você também vai aprender sobre guardar dados no computador usando variáveis.

O tutorial parte 3 vai te ensinar a operar com dados (com os operadores aritméticos) bem como outros tipos de variável que você tem a sua disposição.

Na parte 4 você vai aprender sobre outros dois tipos de operadores no Vizzcode: operadores de comparação (ou relacional) e operadores booleanos (ou lógicos). Tudo que você aprendeu vai ser aplicado no aprendizado do construtor “if” ou “se”, uma das ferramentas mais importantes na programação.

Em seguida, na parte 5, você vai adicionar os loops para suas habilidades de programação com o poderoso construtor “while” ou “enquanto”.
Na parte 6 vamos construir em cima dos recursos vistos nos tutoriais anteriores para te introduzir aos construtores break e continue. Eles vão te proporcionar mais controle na execução do fluxo do loop.

A parte 7 da série de tutoriais vai te ensinar sobre loops “for” ou “para cada”. Eles são uma forma fácil para rapidamente repetir comandos ou iterar por partes do código. Essencial para programas mais complexos.

Na parte 8 você vai ler, guardar e operar em diversos pedaços de dados do mesmo tipo. Para conseguir fazer isso de forma fácil, você vai aprender sobre a estrutura de dados array.

No último tutorial (parte 9) você vai aprender sobre procedimentos. Eles são uma ferramenta fundamental para organizar programas maiores e reutilizar código.


Enquanto você estiver fazendo os tutoriais desse curso, você vai estar desenvolvendo habilidades de resolução de problemas e de pensamento lógico. Essas habilidades são extremamente importantes, mesmo se você não tiver interesse em seguir carreira profissional de desenvolvimento de software.

O curso completo (todos os 9 tutoriais) estão disponíveis dentro do Vizzcode, na Tela de Boas Vindas. Você pode escolher o tutorial Introdução à Programação – Parte 1 e criar um projeto para seguir o tutorial.

As seções seguintes dessa página foram criadas como uma companhia para te ajudar em cada tutorial. Se você tiver tendo dificuldade com o tutorial, essa página pode te direcionar para onde você pode aprender sobre o que está sendo discutido nos tutoriais. Essas páginas de ajuda também são acessíveis de dentro do Vizzcode, no cabeçalho do tutorial.




Introdução à Programação: Parte 1

Esse tutorial é a porta de entrada para o mundo da programação. Um mundo que é diferente de qualquer outro, um mundo em que você será capaz de dar vida para sua imaginação. A programação te proporciona criar jogos, sites, aplicativos, robôs, inteligência artificial, e até mesmo criar alguma coisa que ninguém pensou!
Se você nunca programou antes, ou quer começar a usar o Vizzcode com fundamentos sólidos, esse tutorial é para você! Você vai aprender conceitos importantes e programar seu primeiro programa.


Um Novo Mundo
Para seguir esse tutorial, tudo que você precisa fazer é baixar o Vizzcode e selecionar o tutorial na Tela de Boas Vindas.
A página Como Começar vai te ajudar a configurar tudo que você precisa (é muito fácil!).


Sua Primeira Linha de Código
Essa página te ensina os primeiros passos para você começar a programar seus programas.
Se você precisar de uma explicação mais detalhada de cada passo, você pode seguir a página da documentação do Meu Primeiro Programa. Ela vai te introduzir à Ciência da Computação e te ajudar a criar seu primeiro programa de formas diferentes, caso você esteja com dificuldade em seguir o tutorial embutido.
Não se preocupe muito se você não tiver entendendo algumas coisas: a prática leva à perfeição e você vai ter muitas outras chances de criar seus programas.
Informações especificas podem ser encontradas na documentação sobre o ponto de entrada do seu programa, bem como compilar o seu código.


Olá, Vizzcoder!
Bibliotecas são muito importantes para te ajudar a ir direto ao mais importante do seu programa. É muito fácil usar bibliotecas no Vizzcode: você pode aprender tudo sobre elas aqui.
A Biblioteca Print em particular é ótima por te permitir a mostrar mensagens e comunicar com o usuário. Aqui está como você pode usar ela.
Um problema comum que você pode ter ao criar o programa Olá, Vizzcoder é esquecer de colocar a mensagem "entre aspas".
Preste atenção para os passos descritos no tutorial (bem como no guia do Meu Primeiro Programa) e garanta que seu código esteja igual ao do tutorial! Rapidamente você vai começar a criar programas sem nenhuma ajuda.


Agora é com você
Com esse simples comando que você aprendeu, você pode instruir o computador a criar vários programas legais.
Você pode adicionar várias chamadas de print uma depois da outra no programa, dessa forma:

Como chamar vários print no Vizzcode

Você também pode adicionar mais texto em um único print:

Imprimindo muito texto no Vizzcode

Se você precisar de quebrar a linha (para garantir que o texto seja mostrado de uma forma bacana para o usuário) você pode simplesmente digitar \n sempre que você quiser quebrar a linha, dessa forma:

Como imprimir em duas linhas diferentes

Agora que você sabe o básico, já pode ir para os Exercícios de Programação e praticar o que você aprendeu. Os exercícios vão ser ótimos para você, mesmo no nível iniciante. Esses exercícios são uma ferramenta essencial para seu aprendizado.
Em seguida, quando você quiser aprender coisas novas, você pode seguir para a parte 2.






Introdução à Programação: Parte 2

Agora que você terminou a primeira parte da série, criou seu primeiro programa e provavelmente praticou esse conhecimento, você já pode aprender novos comandos!
Nesse tutorial, você vai aprender como fazer o usuário interagir com seu programa!
Então entre no Vizzcode para acompanhar o tutorial!


O que o Usuário tem Para Falar
Na primeira página você tem a introdução de vários conceitos que você vai aprender neste tutorial, como o comando scan.
É muito importante entender como os dados são guardados no computador e como você pode acessar eles usando variáveis.
Você pode acessar uma explicação bem detalhada aqui, onde você pode aprender tudo sobre isso. Você pode ler várias vezes se precisar. Com esse conhecimento, você já pode ir para a parte prática!


Entrada e Saída de Dados
Esse tutorial vai usar a biblioteca IO (em vez da Print). Ele contém tudo que você precisa para ler dados do usuário (a funcionalidade scan). Você pode ler tudo sobre a biblioteca IO aqui.

Assim como na última vez você deve criar um ponto de entrada para que o computador fique sabendo onde começar a executar os comandos.
Em seguida, declare uma variável. A declaração de uma variável reserva um lugar na memória que podemos guardar e operar com valores. Você pode aprender mais sobre declaração de variáveis nesse link. Ele explica em mais detalhes os passos seguidos nesse tutorial.
Se você quiser as informações completas sobre variáveis (e como elas funcionam dentro do Vizzcode), você pode acessar esse link. Você também tem acesso à uma página inteira sobre declarações aqui.


Qual o seu Nome?
Você já sabe como imprimir mensagens na tela, então agora o desafio é atribuir um valor para uma variável. E não é qualquer valor, é o que o nó do scan leu do usuário.
Atribuições são uma parte importante da programação. Ao atribuir um valor, você muda o valor que uma variável está guardando para um valor específico. Por exemplo, esse nó faz com que a variável numero tenha o valor 5:

Como definir valores para variáveis no Vizzcode

Você pode ver mais exemplos de atribuições aqui, bem como a informação completa sobre elas aqui.
Usar o nó do scan é tão fácil quanto conectar a conexão da parte inferior do nó de Atribuir com a conexão de valor do scan. Isso garante que o que o usuário escrever vai ser atribuído para a variável, definindo seu valor na memória de acordo.
Uma explicação complete da biblioteca IO com seus procedimentos de scan pode ser encontrada aqui.


Printing a Variable
Variáveis contém dados da mesma forma que um numero escrito de explícita (ou número literal) diretamente no seu código. Por conta disso, você pode passar o valor das variáveis onde você poderia escrever texto.
Para imprimir o valor de uma variável, você fazer uma conexão a partir do pino de mensagem do nó de print e selecionar sua variável, criando um nó que contém seu valor:

Como usar o valor de uma variável no Vizzcode

Você também pode apertar Alt e clicar no pino de conexão para deletar a conexão.

Como deletar or desfazer uma conexão no Vizzcode

Note que o tipo da variável deve ser o mesmo do tipo esperado. É por isso que conectar um número na entrada da mensagem do print não funciona, ou conectar um valor de texto para uma chamada de print_int também não funciona.
Você também pode conferir uma seção na documentação sobre Imprimir Variáveis. Você pode ler ela aqui.


Lendo e Imprimindo Números
Os dados que você pede para o computador guardar podem ser de diferentes tipos. Por exemplo, um número inteiro é um tipo de dado. Texto é outro.
No Vizzcode, toda variável tem um tipo de dado que ela guarda. É muito útil porque as operações que podemos fazer nos dados são checadas (e limitadas) baseado no tipo. Por exemplo, você pode dividir um número inteiro por outro, mas você não pode dividir um texto por outro texto! Operações customizadas (como print, scan ou qualquer coisa que você programar) também possui esse benéfico de checagem de tipo .
Portanto, para ler e escrever variáveis do tipo int (números inteiros), você precisa usar procedimentos que foram especialmente criados para lidar com esse tipo (scan_int e print_int).

Você pode ver vários exemplos de ler valores inteiros (e de texto) aqui.
Tem uma seção na documentação sobre tipos. Você pode ler tudo sobre eles aqui.


Agora é sua Hora
Assim como o primeiro tutorial, o que você aprendeu nesse tutorial pode ser usado para criar infinitos programas.
É de extrema importância que você coloque esse conhecimento em prática, melhorando o programa que você criou nesse tutorial. Pergunte mais informações sobre o usuário e mostre essas informações na tela. Você também pode fazer alguns Exercícios de Programação com o que você aprendeu.
Uma vez que você tiver confiante no uso dos procedimentos scan, scan_int, print e print_int para ler e escrever dados dentro de variáveis, você já pode ir para o próximo tutorial!






Introdução à Programação: Parte 3

Esse tutorial vai abrir seus horizontes de programação ao te mostrar como fazer operações aritméticas com dados.
Com esse conhecimento, você será capaz de criar diversos programas que resolvem problemas reais!
Você também vai aprender sobre outros tipos de dados no Vizzcode.
Sem mais delongas, abra o Vizzcode e comece o tutorial!


O Poder de uma Operação Aritmética
Essa página do tutorial é apenas uma amostra e alguns exemplos da razão que você vai usar operadores aritméticos dentro dos seus programas.
Se você tiver querendo saber mais sobre esses operadores, você pode ir para a página da documentação de Expressões Aritméticas e aprender tudo sobre eles. :)


1+1=?
Operar com valores é um dos elementos mais importante na programação de computadores.
Funciona exatamente conforme esperado: você pode comandar o computador para somar dois números (tanto número que você digitou no código, ou números guardados em variáveis).
Você pode aprender muito mais sobre operação com dados lendo essa seção da documentação.

Uma outra ótima forma de aprender é com a experimentação! Você pode brincar com os nós que você tem à sua disposição, corrigindo os erros que você encontrar e imprimindo o resultado.


Números Reais
Essa seção introduz um novo tipo de variável, o float. Você pode acessar sua página da documentação para mais informações sobre isso.
O ponto principal para ser considerado é que ints são número inteiros, enquanto float também contém números não-inteiros (decimais).
Você também terá a introdução de mais nós de atribuição. Eles operam no número antes de fazer a atribuição. Por exemplo, o código a seguir vai definir o valor da variável numero para 10: pois ele vai adicionar 2 ao seu valor atual e depois atribuir o resultado a ele:

Como on nó Somar e Atribuir funciona

Você pode ler tudo sobre nós de atribuição aqui. Você também pode experimentar com eles para aprender colocando a mão na massa! :)


O Tipo Booleano
Bools (ou booleanos) são muito úteis na programação. Existe um conjunto inteiro de operações (as expressões de comparação) que comparam dois valores do mesmo tipo. Por exemplo, dado a e b como valores inteiros, será que a é igual a b?
Como você pode imaginar, é muito útil poder comparar dados na programação. Essas comparações (também chamadas de relações ou operadores relacionais) possuem apenas dois resultados possíveis, verdadeiro ou falso.
O tipo bool é um tipo de dado que guarda verdadeiro ou falso, precisamente para casos como esse.

Para declarar uma variável booleana, você pode apenas mudar o tipo no nó de declaração de variável, dessa forma:

Como declarar uma variável booleana no Vizzcode

Assim como qualquer outra variável, você pode atribuir novos valores para ela:

Atribuindo true e false verdadeiro e falso no Vizzcode

Incluindo valores de outras variáveis:

Atribuindo variáveis boleanas no Vizzcode

A melhor coisa que você pode fazer nesse momento para sua jornada de aprendizado é ir até os Exercícios de Programação e malhar seus músculos de resolução de problemas. Os exercícios vão começar bem simples, usando conceitos básicos e vão ficando mais difíceis de forma incremental para aplicar o que você está aprendendo em problemas do mundo real!
Mesmo se você tiver sentindo o conteúdo um pouco pesado, a melhor coisa que você pode fazer é ir para a academia da programação! :)

PS: Você descobriu o que o operador módulo faz? Se não, você pode aprender tudo sobre ele aqui. Se você tiver pensando como você pode usar ele em programas reais, você tem a sua disposição uns exercícios bem legais! ;)






Introdução à Programação: Parte 4

Nesse tutorial, você vai aprender sobre um dos recursos mais úteis na programação: o construtor if ou “se”.
Ele te permite controlar o fluxo do programa, e mudar quais instruções serão executadas baseado em algum valor.
Você vai gostar bastante desse tutorial! Então dê um start no Vizzcode e selecione o tutorial para começar!!


SE Chover, Eu vou ficar em Casa Assistindo Filmes
Antes de colocar a mão na massa, pense em algumas de suas rotinas e como você escolhe algumas coisas baseado em condições.
Por exemplo, se você estiver atrasado, vai dirigir seu carro até o aeroporto; se não estiver, você vai a pé. Preste atenção que se você estiver atrasado é na verdade uma comparação: é comparado o tempo nesse momento ao tempo que você precisa sair de casa. Essa comparação pode ser ou verdadeira ou falsa.
Outro exemplo: Se tiver chovendo, vou ficar em casa assistindo um filme. Nesse caso, a condição já é um valor booleano: verdadeiro ou falso.


5>7?
Operadores relacionais (também conhecidos como condicionais ou expressões de comparação) comparam dois valores do mesmo tipo, resultando em um valor do tipo bool: verdadeiro ou falso. Você também pode aprender sobre todas as possíveis expressões de comparação aqui na documentação. Os exercícios também possuem ótimas informações nas dicas deles.

Não tenha medo de tentar coisas novas no Vizzcode. Experimentar uma ideia que você tiver é uma ótima forma de aprender. Se você encontrar algum erro de programação nas suas experimentações, você pode facilmente corrigir ele.
A resposta do desafio vai ser revelada na próxima página, onde vamos combinar condições diferentes com operadores lógicos. ;)


Eu só vou para o Cinema Se Eu Terminar meu Dever de Casa e Parar de Chover
Nessa página você foi introduzido ao operador lógico E.
O E combina dois booleanos e resulta em verdadeiro apenas se ambos forem verdadeiros.
Aqui estão todas as saídas possíveis da expressão E:
verdadeiro
E
verdadeiro
=
verdadeiro

verdadeiro
E
falso
=
falso

falso
E
verdadeiro
=
falso

falso
E
falso
=
falso

Você pode aprender tudo sobre operadores lógicos (ou expressões booleanas) aqui.


Isso OU Aquilo?
O OU é o segundo operador lógico.
É similar ao E pois combina dois booleanos em um resultado bool.
A expressão OU vai resultar em verdadeira se qualquer um de seus operadores for verdadeiro.
Aqui estão todas as possíveis saídas da expressão OU:
verdadeiro
OU
verdadeiro
=
verdadeiro

verdadeiro
OU
falso
=
verdadeiro

falso
OU
verdadeiro
=
verdadeiro

falso
OU
falso
=
falso

Você pode aprender tudo sobre operadores lógicos (ou expressões booleanas) aqui.


SE "verdadeiro" faça "x"
O construtor if ou “se” é uma forma de executar certos nós apenas se uma condição for verdadeira.
A condição é um valor booleano, verdadeiro ou falso. E como vimos anteriormente, expressões condicionais (ou expressões relacionais) resultam em um valor bool.
Então é perfeito para testar uma certa relação entre valores (como idade >= 18) e usar essa condição para executar certas partes do código (dentro de um construtor if).

Para adicionar um construtor if você precisa apenas criar um nó “se” no código:

Como usar um construtor se no Vizzcode

Você pode ver como ele funciona criando um simples programa e analisando o resultado:

Como o construtor if se funciona no Vizzcode

Outro exemplo:

Um exmeplo de uso do se para bifurcar o código condicionalmente

Você pode aprender tudo sobre construtores if aqui.
Essa página também explicar alguns detalhes a mais de expressões, que você pode ler aqui.


Agora é com Você
É muito importante praticar esse conhecimento recém adquirido! Nós preparamos cuidadosamente diversos exercícios para você. Eles apresentam problemas reais super interessantes.
Uma vez que você tiver confortável com construtores if, você pode ir em frente para aprender novas habilidades no próximo tutorial.






Introdução à Programação: Parte 5

Agora que você usou o construtor if em diversos programas diferentes, você já pode ir para o próximo desafio: loops while ou “enquanto”.
Esse tutorial vai te ensinar o que é o loop while e como usar!
Abra o Vizzcode e comece com o tutorial dentro da plataforma.


Enquanto Isso...
O loop while é uma forma de repetir uma certa parte do código enquanto uma condição for verdadeira.
No exemplo de "enquanto estiver com fome, vou comer um biscoito" você pode pensar sobre essa lógica de uma outra forma:

Estou com fome agora? Sim. Então comer um biscoito.
Estou com fome agora? Sim. Então comer um biscoito.
Estou com fome agora? Sim. Então comer um biscoito.
Estou com fome agora? Não. Então pode fazer outra coisa.

Se você ainda está tentando entender a lógica, não se preocupe muito, vá para a próxima seção onde vamos começar a programar com o loop while. Com isso, você vai poder visualizar o que o programa está fazendo!


Eu Quero um Biscoito!
Os loops While vão testar uma condição e executar o corpo do loop se for verdadeiro. Depois, ele vai testar a condição novamente. Se a condição for verdadeira, ele vai executar o corpo do loop; Depois, ele vai testar a condição novamente. Se a condição for verdadeira..... Até a condição ficar falsa !

Uma forma bem simples de ver o funcionamento é criar um loop que vai rodar para sempre (usando uma condição que sempre é verdadeira). Dessa forma:

Usando o enquanto (loop while) no Vizzcode

Enquanto a condição for verdadeira (o valor verdadeiro vai ser verdadeiro!), o programa vai imprimir uma mensagem.

Agora que você visualizou de uma outra forma com o loop while funciona, nós podemos mudar a condição para se tornar uma expressão. Por exemplo, a variável contador vai começar igual a 1 e depois para cada iteração do loop ele vai ser incrementando por um. A condição do loop while vai ser: enquanto o contador for menor ou igual a 3. O que você acha que vai acontecer?
Aqui está o programa:

Um exemplo do loop enquanto (while) no Vizzcode

Ele executou da forma esperada?
É muito útil “executar” o programa na mão. Ou seja, pegar um pedaço de papel e ir linha por linha do programa, escrevendo o valor de cada variável e das condições, dessa forma:
main
: ponto de entrada do programa
declarar variável contador (contador é igual a 1)

while
:
contador é <= 3? (1 <= 3?) Sim
  
imprimir
mensagem
  Incrementar contador por 1 (contador é igual a 2)

contador é <= 3? (2 <= 3?) Sim
  
imprimir
mensagem
  Incrementar contador por 1 (contador é igual a 3)

contador é <= 3? (3 <= 3?) Sim
  
imprimir
mensagem
  Incrementar contador por 1 (contador é igual a 4)

contador é <= 3? (4 <= 3?) Não
Isso vai te ajudar a entender como o computador está se comportando enquanto roda o programa.
Tente criar alguns outros exemplos usando o loop while, "executando o programa na mão" e observe se o resultado que você está esperando é o mesmo que o programa está rodando.


Cadastrando Várias Pessoas
Essa página introduz outro exemplo usando os loops while. Nesse exemplo, o núcleo do programa vai continuar executando enquanto que o valor que o usuário digitar for igual a “sim”.
É importante andar um passo de cada vez e executar o programa todas as vezes.
Você pode rever conceitos importantes como operações booleanas e depois reler as páginas anteriores.

Outra ótima estratégia que discutimos nas páginas anteriores é executar o programa “manualmente” para garantir que você entenda o que o programa está fazendo em cada ponto e por que. Tente fazer esse exercício com o programa dessa página para você entender ele melhor.


Uma Outra Forma de Cadastrar
Com as ferramentas que discutimos nas páginas anteriores, você pode vencer o desafio de entender melhor o programa apresentado.
Teve também uma amostra do próximo tutorial, onde você vai aprender mais formas de controlar o fluxo do loop.
Os Exercícios de Programação que cobrem os Loops são uma ótima forma de fortalecer seu conhecimento, principalmente por conta dos exercícios sempre começarem mais fáceis e irem ficando mais difíceis de forma incremental, para garantir que suas habilidades sejam levadas ao limite!






Introdução a Programação: Parte 6

Existem formas de ter mais controle sobre o fluxo do loop.
Os construtores Break ou “Sair” e Continue ou “Continuar” são uma ótima forma de mudar esse fluxo.
Nesse tutorial, você vai ver como você pode simplificar a condição do loop usando esses construtores para controlar o loop.
Tudo que você precisa para começar é abrir o Vizzcode e selecionar o tutorial!


Se Isso Acontecer... PARE!
É muito simples entender o construtor break: sempre que o programar encontrar um break, o loop sai imediatamente, independente da condição.
Essa página no tutorial apenas cria um loop infinito (conforme vimos aqui) para adicionarmos o break na próxima página!


Um Novo Jogo de Dado
A forma mais simples de ver um break em ação é no nosso exemplo de loop infinito:

Um loop infinito no Vizzcode

Se adicionarmos um break após o “print”, quantas vezes o programa vai imprimir a mensagem?

Saindo do loop

Apenas uma! Quando o programa encontrar o construtor break o programa sai do loop imediatamente. E se adicionarmos o break antes do print?

Saindo do loop antes

Agora o programa sai do loop imediatamente; antes de executar o print.
O break pode ser combinado com o construtor if que você aprendeu anteriormente para criar condições mais poderosas, como a dessa página do tutorial. Você também pode ver esse exemplo mais simples:

Usando um se (if) e um sair (break) para controlar o fluxo do loop



Continuar Sem Executar
O Continue é um construtor que vai pular essa iteração do corpo do loop. Sempre que o programa encontrar um construtor continue, ele vai sair do corpo do loop, mas em vez de sair do loop completamente (como no construtor break), ele vai simplesmente para a próxima iteração do loop.
Veja o exemplo a seguir. Quais valores ele vai imprimir?

O que um continue (continuar) faz no Vizzcode

Tente colocar esse código no seu programa e executá-lo. Ele imprimiu conforme você esperava?
Se o construtor if for verdadeiro (contador for igual a 4), o programa vai continuar, pulando essa execução do corpo do loop. Isso significa que o print_int não vai rodar, mas o loop vai para sua próxima iteração.






Introdução à Programação: Parte 7

Existe uma outra ótima forma de fazer um loop pelo seu programa: usando os loops for.
Esse vai ser o tópico desse tutorial, então abra o Vizzcode, selecione esse tutorial e aprenda uma nova habilidade!


Para Cada
O for é só isso: executar um certo pedaço de código um certo número de vezes!
Ele começa no primeiro valor especificado (incluindo ele) e acaba no último valor especificado (também incluindo ele).
A variável de iteração (o valor que vai do primeiro até o último valor) é acessível dentro do for. Ela é apenas um contador normal (ou variável de controle) que incrementa por 1 em cada iteração do loop.
Se você ainda tiver com dificuldade de visualizar, você pode aprender mais sobre os loops for na documentação aqui ou simplesmente ir para a próxima página onde vamos implementar um dentro do Vizzcode.


O “for” na Prática
Como você pode ver, colocar um loop for no Vizzcode é bem fácil.
Apenas arraste um pino de execução branco e crie um nó do for:

Criando um loop for no Vizzcode

No pino do Corpo do Loop você pode adicionar o código que vai ser repetido.
Em seguida, você pode configurar o primeiro e o último valor da variável de iteração. O loop for vai executar dentro desse intervalo:

Um programa-exemplo com um loop for no Vizzcode

Aqui está o mesmo código usando o nó do while:

O equivalente de um loop for usando um while



Qual é o Maior Número?
Esse exemplo usa praticamente todas as ferramentas que você aprendeu até agora.
Se você precisar, pode reler os tutoriais específicos do construtor if, loops e break e continue.
Você também pode acessar suas páginas na documentação: if, while e break e continue.
Outra estratégia bem importante de aplicar é quebrar o problema em menores ou executar manualmente o programa para você entender ele melhor.

Antes de ir para o próximo tutorial, invista seu tempo para terminar todos os Exercícios de Programação de Loops, agora que você já possui todas as ferramentas a sua disposição! Esses exercícios vão garantir que seu conhecimento fique sólido antes de adicionar novos elementos para sua caixa de ferramentas de programação!






Introdução à Programação: Parte 8

Nesse tutorial, você vai aprender uma estrutura de dados muito importante para organizar seus dados: arrays! Quando você possui muitos dados do mesmo tipo, você pode usar um array para guardar e operar facilmente com todos eles.
Vamos aprender como usar eles nos seus programas! Inicialize o Vizzcode, abra esse tutorial e vamos nessa!

Um Armário com Vários Setores
Os arrays são uma ótima forma de estruturar seus dados quando você possui vários valores do mesmo tipo que relacionam um com os outros.
Por exemplo, se você precisar ler vários números do usuário e depois operar com eles de diversas formas, um array é perfeito para isso.
Você cria um array inserindo um nó de Nova Variável escolhendo seu tipo de dados, clicando no botão do array, e depois digitando o tamanho do array:

Criando um array no Vizzcode

Na imagem, o array guarda 5 ints diferentes.
Você pode acessar e operar neles individualmente ou facilmente iterar pelo array inteiro.
Nós vamos brincar com os arrays no resto do tutorial, em seguida, vou te direcionar para os exercícios com problemas do mundo real (e bem legais) para você se desafiar!

Como um companheiro desse tutorial, você também pode seguir a página da documentação de arrays aqui.


Inicializando o Array
Essa página te introduz as duas formas mais fundamentais de usar arrays: acessando seus elementos individualmente, e iterando pelo array.
Em ambos os casos, você pode usar o operador de subscrito do array. Temos uma seção inteira sobre acessar arrays com esse operador aqui.
Ao subscrever o array com um índice, você acessa o array naquela posição e você pode usar ela da mesma forma que você já usa uma variável normal: atribuindo valores ou operando com ela normalmente.
O interessante de usar arrays é que usando um loop for que cobre o intervalo do array você pode escrever um pedaço de código uma única vez e fazer ele executar em diversos valores! O intervalo de um array começa com o primeiro índice (zero) e vai até seu último índice (no caso de um array com tamanho igual a 10, seu último índice vai ser 9). Isso acontece por conta dos índices de array serem baseados em zero . Por exemplo: em um array de tamanho 4, os índices válidos são 0, 1, 2 e 3.
Um loop for que movimenta a variável de iteração por todo o intervalo, pode acessar o array na posição da iteração. Dessa forma ele vai executar o corpo do loop para cada elemento (a primeira o loop vai operar no array no índice 0, a segunda vez no índice 1 e assim por diante...)

Se você quiser consolidar o que aprendeu até agora nesse tutorial antes de seguir em frente, você pode resolver os primeiros Exercícios de Programação sobre arrays.


Cadastrando Várias Pessoas
Essa página expande a ideia de usar arrays para armazenar dados e cria dois arrays em paralelo, para armazenar os nomes e idade de todos os jogadores.
Cada pessoa vai ser associada a um índice e você pode acessar os dados dessa pessoa indexando cada array naquela posição.
Por exemplo: o nome da primeira pessoa é armazenado no array nomes na posição 0, e a idade da pessoa é armazenada no array idades na posição 0 também. A segunda pessoa vai usar o índice 1 de ambos os arrays, a terceira vai usar o índice 2 e assim por diante.

Esse é o programa completo:
#import
"IO"


main
:: () {
    nomes: [
10
]
string
;
    idades : [
10
]
int
;
    
    
for
0
..
9
{
        nomes[it] =
scan
(
"\nDigite o nome: "
);
        idades[it] =
scan_int
(
"\nDigite a idade: "
);
    }
    
    
for
0
..
9
{
        
print
(
"\nPessoa "
);
        
print_int
(it);
        
print
(
" - Nome: "
);
        
print
(nomes[it]);
        
print
(
", Idade: "
);
        
print_int
(idades[it]);
    }
}

Tente copiar o código no Vizzcode e analise os nós gerados. Se você tiver com dificuldade em entender, você pode executar o código manualmente, conforme discutimos anteriormente.
Você também pode ver outros exemplos que usam essa técnica como o tutorial do Jogo da Velha ou os exercícios de programação de Consultar Múltiplos Dados.


O Menor Número
Esse desafio vai usar diversos recursos da programação que você já aprendeu!
Se você não tiver conseguindo resolver, os parágrafos a seguir vão te dar algumas dicas (da mesma forma dos exercícios de programação).

Você deve iterar pelo array (com um loop for, por exemplo) para fazer um pedaço de código funcionar em cada elemento do array.

Assim como fizemos no último tutorial, você pode criar uma variável para armazenar o menor número e testar todos os valores com esse valor. Se for menor que o menor número, ele se torna o novo menor número!

Aqui está uma solução para o desafio:

Usando arrays para encontrar o menor número



Tamanho do Array
O array count é uma expressão que você pode usar para evitar de escrever número literais (ou número mágicos) no seu programa que precisam ser mudados caso alguma outra parte do programa mude.
É muito comum os programas evoluírem e mudar durante o desenvolvimento, ter que lembrar de mudar diversos elementos diferentes do programa quando alguma outra coisa muda é muito sucinto ao erro.
Por exemplo: se agora você precisar ler dados de 50 usuários em vez de 10, você vai precisar ler seu programa inteiro procurando por lugares que você escreveu na mão o número 9 (tamanho – 1) para iterar pelo array?
O tamanho do array é uma forma de saber automaticamente o tamanho do array e é muito útil nesses casos. Você pode ler mais sobre ele aqui.

É claro, que agora que você aprendeu um habilidade nova (e muito importante!), você deve colocar ela em uso resolvendo os Exercícios de Programação! Os exercícios de array vão te guiar criando programas bem legais e úteis, que vão te desafiar de forma incremental e garantir que você está exercitando os músculos do seu cérebro!
Quando você terminar, já pode ir para a últimaparte dessa série de tutoriais e aprender sobre procedimentos!






Introdução à Programação: Parte 9

Essa é a última parte da série de “Introdução à Programação”. Você percorreu um longo caminho! Parabéns!! Agora, você vai aprender um recurso versátil para organizar seu programa e até mesmo resolver problemas específicos: procedimentos. Com isso, você terá todos os recursos para criar programas mais complexos (até mesmo jogos!). O que você está esperando? Abra o Vizzcode e selecione esse tutorial para começar!

Além do Procedimento Main
A introdução desse tutorial te proporciona um entendimento básico do que são procedimentos e por que usamos eles.
Caso não tenha sido completamente claro, você pode acessar sua página da documentação ou ler uma discussão mais detalhada em o que são procedimentos e por que usamos eles.


A Estrutura de um Procedimento
Essa página do tutorial contém várias informações importantes de como você pode criar procedimentos. É importante que você leia cuidadosamente e releia várias vezes se precisar.
Você já sabe como criar procedimentos (por conta de já ter criado o procedimento main - o ponto de entrada várias vezes até agora).

Você pode declarar os parâmetros do procedimento adicionando um nó de nova variável a partir do pino de execução dos Parâmetros no nó do procedimento:

Como adicionar parâmetros a procedimentos no Vizzcode

Você pode ler tudo sobre parâmetros aqui.
O mesmo processo pode ser aplicado para declarar valores de retorno:

Um procedimento com parâmetros e retornos no Vizzcode

Aqui está a página da documentação sobre valores de retorno.
Programar o corpo do procedimento é simplesmente uma questão de operar com as variáveis que você recebeu como parâmetro, com a adição de um novo nó: o construtor de retorno. Ele é muito útil e fundamental para retornar valores. Você pode ler tudo sobre ele aqui.

Por fim, você também pode aplicar o método discutido anteriormente para entender a execução do programa. Quando você está executando o código manualmente, lembre-se de começar no corpo do procedimento main e pular para o corpo do procedimento sum sempre que ele for chamado. Também garanta que você está mantendo o controle do valor de todas as variáveis, especialmente os parâmetros, bem como seus escopos.


Múltiplos Retornos
Essa página expande o que você aprendeu sobre valores de retorno e te introduz a múltiplos valores de retorno.
É bem semelhante a um único valor de retorno no corpo do procedimento. Uma grande diferença entretanto, é que para ler os múltiplos valores retornados de um procedimento, você precisa usar declarações de variáveis compostas. Você pode ler tudo sobre elas aqui caso você não entenda o seu funcionamento.

Para consolidar esse conhecimento, você pode criar mais procedimentos que executam código. Por exemplo:
  • Crie um procedimento que imprime a mensagem "Estou dentro de um procedimento"
  • Crie um procedimento que imprima um inteiro que ele recebeu como parâmetro
  • Crie um procedimento que recebe um float e retorna seu valor ao quadrado


O Básico Ficou Para Trás e o Mundo da Programação Está à Frente
Que Vitória incrível!
Você completou todos os 9 tutoriais desse curso enfrentando todos os desafios que encontrou no caminho. Parabéns!
Como mencionamos na página do tutorial dentro do Vizzzcode, você pode entrar em um novo mundo da programação: fazendo jogos! Estão disponíveis vários tutoriais nesse tópico avançado.
Novamente, os Exercícios de Programação são uma ótima forma de praticar suas habilidades.
Você pode sempre conferir as novidades do Vizzcode na página principal.
E é claro, seguir suas ideias para criar programas novos e interessantes!
Você pode aprender sobre como compartilhar seus programas nessa página!
Nos vemos na próxima!