Mostrando postagens com marcador console. Mostrar todas as postagens
Mostrando postagens com marcador console. Mostrar todas as postagens

Curso de Pascal | Aula 06 - Vetores

 Se você quer armazenar e manipular conjuntos de valores de forma organizada, os vetores (ou arrays) são fundamentais. Nesta sexta aula do nosso curso de Pascal grátis, você aprenderá a criar, acessar e percorrer vetores, além de resolver problemas práticos usando essa estrutura de dados.

Um vetor é um conjunto indexado de elementos do mesmo tipo. Em Pascal, ele pode ser estático (com tamanho fixo) ou dinâmico, mas aqui trabalharemos com vetores estáticos, em que cada posição guarda um valor e é acessada por um índice. Os índices não precisam começar em 1 – podem iniciar em 0 ou qualquer outro valor inteiro, proporcionando flexibilidade para representar diferentes situações.

🎯 O que você vai aprender nesta aula

  1. Conceito de vetor e analogia com uma fila de senhas.

  2. Declaração de vetores em Pascal com diferentes intervalos de índices.

  3. Acesso e manipulação de elementos, incluindo índices negativos.

  4. Uso de laços for para preencher e percorrer vetores.

  5. Exercícios práticos envolvendo leitura de números, filtragem de pares, cálculo de médias e outras operações.


📺 Assista à Aula 6




📚 Conteúdo da Aula

O que é um vetor?

Um vetor é uma estrutura que armazena uma sequência ordenada de elementos do mesmo tipo. Pense em uma fila de senhas com dez posições; cada posição guarda um número, e você pode acessar qualquer uma delas diretamente pelo índice (a posição na fila).

Como declarar um vetor em Pascal

Para criar um vetor estático em Pascal, usamos a sintaxe:

var numeros: array[1..10] of integer;

Esse exemplo declara numeros com dez posições, indo do índice 1 ao índice 10. Os índices não precisam começar em 1: podemos declarar um vetor com índices de -55, ou mesmo começar em 0:

var exemplo: array[-5..5] of integer;

Acessando elementos do vetor

Cada posição do vetor é acessada com o operador []. No exemplo abaixo, usamos índices negativos para representar os dias passados, onde 0 é o dia atual:

var clima: array[-4..0] of string; begin clima[-4] := 'Chuva'; clima[-3] := 'Nublado'; clima[-2] := 'Ensolarado'; clima[-1] := 'Parcialmente nublado'; clima[ 0] := 'Chuva leve'; end.

Assim, clima[0] contém o clima de hoje e clima[-2] representa anteontem.

Usando laços para preencher e percorrer vetores

Quando o vetor possui várias posições, não é prático atribuir valores manualmente. Em vez disso, utilizamos laços for. Por exemplo, para ler cinco números digitados pelo usuário:

var i: integer; numeros: array[1..5] of integer; begin for i := 1 to 5 do begin write('Digite o número da posição ', i, ': '); readln(numeros[i]); end; end.

Para exibir os valores:

for i := 1 to 5 do writeln('Posição ', i, ': ', numeros[i]);

Também é possível preencher vetores automaticamente:

for i := 1 to 5 do numeros[i] := i * 10; randomize; for i := 1 to 5 do numeros[i] := random(100); // valores de 0 a 99

Exemplo completo: Mostrar apenas os pares

var i: integer; numeros: array[1..5] of integer; begin for i := 1 to 5 do begin write('Digite o número ', i, ': '); readln(numeros[i]); end; writeln('Números pares digitados:'); for i := 1 to 5 do if (numeros[i] mod 2 = 0) then writeln(numeros[i]); end.

📝 Exercícios

  1. Scanner de números positivos: leia dez números e mostre somente os positivos.

  2. Mini banco de notas: armazene quatro notas e calcule a média final.

  3. Caça ao maior número: leia sete números e mostre qual foi o maior.

  4. Contador de pares e ímpares: conte e exiba quantos números pares e ímpares foram digitados.

  5. Soma dos elementos extremos: some o primeiro e o último valor do vetor.


✍️ Exercício proposto para a aula

Faça um programa em Pascal que leia seis nomes de pessoas e depois exiba:
• O primeiro nome digitado
• O último nome digitado
• Todos os nomes em ordem inversa

Treine bastante! Quanto mais você pratica a manipulação de vetores, mais naturais se tornam essas operações no dia a dia da programação.


📂 Recursos

📜 Código Fontehttps://github.com/Programming-Drops/pascal-course

Curso de Pascal | Aula 05 - Manipulando Strings

Se você quer dominar a manipulação de textos no Pascal e escrever programas que tratem dados de forma eficiente, essa quinta aula do nosso curso de Pascal grátis é para você! Nessa etapa exploramos como acessar cada caractere de uma string, localizar e substituir partes do texto e utilizar a unit SysUtils, compatível com a versão Delphi e presente em todas as plataformas suportadas. Também conhecemos funções essenciais como Length – que retorna o tamanho de uma string ou array – e LowerCase e UpperCase, que transformam toda a string em minúsculas ou maiúsculas.

🎯 O que você vai aprender nesta aula

  1. O que são strings em Pascal e como indexar cada caractere.

  2. Como localizar e substituir caracteres ou trechos dentro de uma string.

  3. Como utilizar a unit SysUtils e suas rotinas de manipulação de texto.

  4. Como usar as funções Length, LowerCase e UpperCase para medir e alterar o texto.

  5. Exercícios práticos: contar vogais em um texto e capitalizar a primeira letra de cada palavra.


📺 Assista à Aula 5


📚 Conteúdo da Aula

Uma string em Pascal é uma sequência de caracteres. Nesta aula mostramos como acessar cada caractere pelo índice (por exemplo, S[i]) e como percorrer a string com loops. Você aprenderá a trabalhar com a unit SysUtils, que oferece várias utilidades, como:

  • Length(s) – retorna o tamanho de uma string ou array;

  • LowerCase(s) – gera uma versão totalmente em minúsculas;

  • UpperCase(s) – gera uma versão totalmente em maiúsculas.

Exemplo de uso:

var s: string; begin s := 'Olá Mundo'; writeln('Tamanho: ', Length(s)); // imprime 9 writeln(LowerCase(s)); // olá mundo writeln(UpperCase(s)); // OLÁ MUNDO end;

📝 Exercícios

  1. Contar vogais: escreva um programa que percorra um texto e conte quantas vezes cada vogal aparece.

  2. Capitalizar palavras: crie um procedimento para colocar a primeira letra de cada palavra em maiúscula (ex.: fulano de talFulano De Tal).

Acesse o artigo completo no blog para ver o código fonte e as soluções desses desafios.

📌 Próxima aula: veremos como utilizar vetores no Pascal.


📂 Recursos

📜 Código Fontehttps://github.com/Programming-Drops/pascal-course

Curso de Pascal Grátis | Aula 4: Procedimentos e Funções

Se você quer escrever códigos mais organizados, reutilizáveis e fáceis de manter, vai adorar esta quarta aula do nosso curso de Pascal grátis! 🚀

Nesta etapa, exploramos procedimentos e funções, dois recursos fundamentais para estruturar melhor seus programas, evitar repetição de código e melhorar a clareza do que você escreve.
Você vai aprender quando usar cada um, como criar parâmetros, como retornar valores e boas práticas para aplicar no dia a dia da programação.

🎯 O que você vai aprender nesta aula

  1. O que são funções e procedimentos no Pascal

  2. Quando usar funções para retornar valores

  3. Quando usar procedimentos para executar ações sem retorno

  4. Estrutura e sintaxe de cada um

  5. Exemplos práticos com cálculos e mensagens na tela


📺 Assista à Aula 4



📚 Conteúdo da Aula

Funções

Uma função é como uma máquina que recebe entradas (parâmetros), processa algo e retorna um valor como resultado.
Usamos funções quando precisamos calcular um valor e utilizá-lo em outras partes do programa.

Sintaxe:

function NomeDaFuncao(parametro1: tipo; parametro2: tipo): tipoDeRetorno;
var variavelLocal: tipo; begin // Código da função NomeDaFuncao := valorDeRetorno; end;

Exemplo – Calcular área de um retângulo:

function CalcularAreaRetangulo(base: real; altura: real): real;
begin CalcularAreaRetangulo := base * altura; end; var largura, comprimento, area: real; begin largura := 10; comprimento := 5; area := CalcularAreaRetangulo(largura, comprimento); WriteLn('A área do retângulo é: ', area); end.


Procedimentos

Um procedimento é como um robô que executa uma ação, mas não retorna valores.
Utilizamos para mostrar mensagens, manipular dados ou controlar o fluxo do programa.

Sintaxe:

procedure NomeDoProcedimento(parametro1: tipo; parametro2: tipo);
var variavelLocal: tipo; begin // Código do procedimento end;

Diferença entre Funções e Procedimentos

  • Função → sempre retorna um valor.

  • Procedimento → executa ações, mas não retorna valores diretamente.

💡 Dica: Procedimentos e funções ajudam a evitar código duplicado e tornam seu programa mais fácil de entender e manter. Sempre que encontrar um bloco de código repetido, considere transformá-lo em uma função ou procedimento.

Se você perdeu a Aula 3 – Estruturas de Controle, recomendo assistir antes para manter a sequência de aprendizado.

📌 Próxima aula: veremos manipulação de strings no Pascal.


📂 Recursos

📜 Código Fonte: https://github.com/Programming-Drops/pascal-course

Curso de Pascal Grátis | Aula 3: Estruturas de Controle

 Se você está começando a aprender programação ou quer reforçar sua base na linguagem Pascal, esta terceira aula do nosso curso de Pascal grátis é para você! 🚀

Nesta etapa, exploramos as estruturas de controle em Pascal, que são responsáveis por alterar a ordem de execução de um programa, permitindo desvios e repetições de acordo com condições específicas.
Com elas, podemos criar códigos mais inteligentes, dinâmicos e eficientes.

🎯 O que você vai aprender nesta aula

  1. O que são estruturas de controle e como elas funcionam no Pascal

  2. Estruturas de desvio: if..then e else

  3. Estruturas de repetição: for, while..do e repeat..until

  4. Diferenças entre as estruturas de repetição e quando utilizar cada uma

  5. Exemplos práticos, como tabuada, somatório e cálculo de IMC


📺 Assista à Aula 3




📚 Conteúdo da Aula

Estruturas de Controle de Desvio

  • if..then: executa um bloco de código se a condição for verdadeira.

var x: integer; begin x := 100; if (x > 200) then begin WriteLn('o valor de x é maior que 200!'); end; end.
  • else: executa um bloco de código se a condição for falsa.

var
x: integer; begin x := 100; if (x > 200) then begin WriteLn('o valor de x é maior que 200!'); end else begin WriteLn('o valor de x é menor que 200!'); end; end.


Estruturas de Controle de Repetição

Permitem a execução de um conjunto de instruções várias vezes.

  • for – repete um conjunto de instruções um número definido de vezes.

var n: integer; // variável de controle (contador)
begin for n := 1 to 10 do begin { código a ser repetido } end; end.
  • while..do – repete enquanto a condição for verdadeira.

var
x: integer; begin x := 15; while (x <= 20) do begin x := x + 1; end; end.
  • repeat..until – executa pelo menos uma vez e testa a condição no final.

var
x: integer; begin x := 1; repeat x := x + 1; until (x > 10); end.

💻 Exemplos Práticos

1. Tabuada

var
i, x: integer; begin for i := 1 to 10 do begin x := i * 2; WriteLn(i, '* 2 = ', x); end; end.

2. Somatório

var
n, soma: integer; begin n := 1; soma := 0; while (n <= 100) do begin soma := soma + n; n := n + 1; end; WriteLn(soma); end.

3. IMC – Índice de Massa Corporal
Calcule o IMC sabendo que:

IMC = peso (kg) / (altura (m) ^ 2)

Tabela de classificação:

CategoriaIMC
Abaixo do normal< 18.5
Normal18.5 a 24.9
Sobrepeso24.9 a 29.9
Obesidade> 29.9

💡 Dica: Essa é uma aula prática. Tenha seu compilador Pascal e seu editor de código prontos para digitar os exemplos junto comigo. Assim, você assimila o conteúdo muito mais rápido.

Se você perdeu a Aula 2 – Variáveis e Estruturas Condicionais, recomendo assistir antes para manter a sequência de aprendizado.

📌 Próxima aula: veremos procedimentos e funções, que permitem organizar e reaproveitar partes do código de forma mais eficiente.


📂 Recursos

📜 Código Fonte: https://github.com/Programming-Drops/pascal-course

Curso de Pascal Grátis | Aula 2 - Variáveis e Estruturas Condicionais

Se você está começando a aprender programação ou quer reforçar sua base na linguagem Pascal, esta segunda aula do nosso curso de Pascal grátis é para você!

Nesta etapa, exploramos dois conceitos fundamentais que estão presentes em praticamente todas as linguagens de programação:

  • Variáveis – o que são, como declarar, atribuir valores e escolher tipos adequados.

  • Estruturas condicionais – como criar decisões no seu código usando if...then...else e outras variações.

Com exemplos práticos, você vai entender como controlar o fluxo de execução de um programa e como armazenar e manipular dados usando variáveis.

🎯 O que você vai aprender nesta aula:

  1. Diferença entre variáveis e constantes

  2. Tipos de variáveis mais comuns no Pascal

  3. Como receber dados do usuário e armazená-los em variáveis

  4. Tomada de decisões com if e else

  5. Criando programas interativos que respondem às condições estabelecidas

📺 Assista à Aula 2



💡 Dica: Essa é uma aula prática. Tenha seu compilador Pascal e seu edidor de cógido pronto para digitar os exemplos junto comigo. Assim, você assimila o conteúdo muito mais rápido.

Se você perdeu a primeira aula, recomendo assistir antes para ter uma base sólida

📌 Próxima aula: vamos entrar no tema laços de repetição, para criar programas que executam tarefas automaticamente várias vezes.


📂Recursos

Curso de Pascal Grátis em Vídeo

Sim! É isso mesmo: um novo curso de Pascal em vídeo, totalmente gratuito, disponível em pleno 2025! 🚀

Se você tem dificuldade de encontrar material recente e de qualidade sobre a linguagem Pascal, esta é a oportunidade perfeita para começar.

Nesta primeira aula, vamos conhecer a linguagem, o ambiente de desenvolvimento e entender quais recursos básicos vamos utilizar para criar uma base sólida no aprendizado. O objetivo é conduzir você, passo a passo, ao domínio dessa linguagem fantástica que tanto amamos.

Além de apresentar os conceitos fundamentais, todos os exemplos serão desenvolvidos ao vivo, de forma interativa. Isso significa que você vai acompanhar o processo real de escrita de código, incluindo erros e como corrigi-los — exatamente como acontece na vida de um programador.

🎯 O que você vai aprender nesta aula

  1. O que é a linguagem Pascal e para que ela é utilizada.

  2. Como configurar o ambiente de desenvolvimento.

  3. Estrutura básica de um programa em Pascal.

  4. Como compilar e executar seu primeiro programa.

  5. Boas práticas para começar no mundo da programação.


📺 Assista à Aula 1


Próxima aula: veremos Variáveis e Estruturas Condicionais, para criar programas interativos e inteligentes.

📂 Recursos

📜 Código Fonte: https://github.com/Programming-Drops/pascal-course

Animando o Console - Efeito Matrix Parte II

Saída da 2ª animação em modo texto. Bem mais interessante.
No último post criamos um pequeno programa que imprimia zeros e uns em posições aleatórias da tela, criando um efeito muito simples, mas nada parecido com o efeito do console do matrix que estamos querendo escrever.

O objetivo deste primeiro programa era se familiarizar com as funções da API do windows e começar a conhecer o ambiente e suas limitações.

O leitor mais atento poderá ter percebido, entretanto, vários problemas com o programa escrito. O primeiro deles é que não estamos realmente gerando os quadros (frames) de uma animação, estamos simplesmente jogando caracteres na tela da maneira mais displiscente e ineficiente se pode imaginar.

Animando o Console - Efeito Matrix

Saída da 1ª animação em modo texto. Bem vindo à Matrix! :)
Depois de ver o vídeo Armaggedon na postagem anterior, fiquei nostálgico e resolvi brincar um pouco com o console na tentativa de gerar algo graficamente interessante.

E por que alguém faria isto em pleno ano de 2014 com tantas opções e tantas tecnologias capazes de renderizar imagens super realistas em hardwares comuns e baratos? - eu até posso ouvir você perguntando.

Pelo prazer e pelo desafio, ora bolas! Sinceramente, precisa de mais que isto?

Então vamos começar nos familiarizando com o console dentro do Windows. Segundo a documentação da Microsoft

Consoles gerenciam inputs e outpus (I/O) para aplicações em modo caractere (aplicações que não providenciam sua própria interface gráfica).

Armaggedon – Animação em Modo Texto

Yuriy Kotsarenko, conhecido como LifePower, o autor da biblioteca Asphyre Sphinx, em parceiria com Humberto Andrade (aka Hab Soul) e Leon Moorrees (aka LPChip) escreveu um programa que gera animações em tempo real com efeitos 3D e trilha sonora para uma competição na área da computação gráfica.

Nada especial se não fosse por dois detalhes:

  1. tudo isso foi escrito em delphi e 
  2. tudo é gerado na janela de uma aplicação console! 
 Isso mesmo, uma aplicação console! É de cair o queixo a habilidade desses caras.

Confira o resultado no vídeo:



Ainda na dúvida?

Baixe o programa, descompacte-o e execute você mesmo. Em sistemas anteriores ao Windows 7 ainda é possível ver tudo em tela cheia pressionando At + Enter!