Excel – primeiro programa

excel

Atualmente o Microsoft Excel contém um editor, acessível pelas teclas Alt e F11, de VBA (Visual Basic for Applications), linguagem de programação derivada do Visual Basic 6 e das antigas linguagens de macro anteriores a 1993.

Essa versão de nosso primeiro programa em Excel é uma mistura de macro e programa, como podemos ver nas próximas ilustrações.

excel1

Essa macro é executada a partir da guia Desenvolvimento > Macros > Executar e sua saída compõe-se da caixa de mensagem mostrada abaixo sobre a listagem.

excel2

O código começa com a palavra reservada Sub seguida pelo nome do procedimento e os parênteses (), e termina com as palavras reservadas End Sub.

Na instrução MsgBox os argumentos (valores de variáveis e constantes) são concatenados pelo caractere & e a constante vbLf insere uma linha, assim como a função Chr(10).

Os comentários são precedidos pela palavra reservada Rem ou pelo caractere (apóstrofo).

Fortran – primeiro programa

fortran

Fortran é uma linguagem de programação criada na década de 50 e muito usada até hoje em Ciência da Computação e Análise Numérica.  Seu nome inicialmente era grafado FORTRAN, significando “IBM Mathematical FORmula TRANslation System”.

Veja abaixo a listagem do nosso primeiro programa em Fortran.

fortran1

Abaixo podemos ver a saída de tela:

fortran2

Observe que o programa é delimitado pelas palavras reservadas program e end program (seguidas pelo nome do programa), como se fossem as chaves em outras linguagens.

Os comentários são precedidos pelo caractere ! (ponto de exclamação), ou pelos caracteres C ou c sempre na primeira coluna de uma linha, mas isto depende da versão do Fortran ou do compilador.

Para a definição de constantes é usado o atributo parameter precedido por vírgula e seguido pelo separador :: (dois pontos, duas vezes).

Na declaração dos tipos literais, após o nome da variável, foi usado o caractere * (asterisco) seguido do comprimento da string (número de caracteres).

A instrução print é seguida pelo caractere * e por uma vírgula antecedendo a variável ou constante cujo valor será enviado à tela em um formato implícito de saída conforme seu tipo.  Por ora, basta lembrar que essa instrução deve ser

print *, lista de variáveis/constantes separadas por vírgula.

Se você estiver usando Windows, sugiro que adquira a IDE (ambiente integrado para desenvolvimento de aplicações) Plato.  Para Linux, talvez o compilador g95 seja a escolha adequada.

Portugol – primeiro programa

portugol0

Assim como o Potigol e o Visualg, o Portugol é um pseudo-código ou português estruturado para o aprendizado de lógica de programação e algoritmos.

Veja a seguir o nosso programa e, em seguida, a saída de tela.

portugol1

portugol2

De forma semelhante a Java e C#, o código começa com a palavra reservada programa seguida pelo bloco que envolve o corpo do programa em chaves.  A função principal inicio também tem os parênteses para conter eventuais argumentos e o bloco envolvendo seu corpo (declarações, comandos, instruções) entre chaves.  A boa nova é que não precisa de ponto-e-vírgula para terminar as instruções e tudo é em português!

As variáveis usadas foram dos tipos inteiro, real e cadeia.

A palavra reservada const define uma constante.

A instrução para enviar caracteres à tela é escreva.

Divirta-se!

 

 

MSX BASIC – primeiro programa

msx0

Nas décadas de 70 e 80 do século passado (!) houve uma série de computadores pessoais domésticos, como Apple II e Macintosh; TRS-80 e TRS-80 Color Computer; Commodore PET, VIC-20, 64 e Amiga; Atari 400/800 e ST; Sinclair ZX80 e ZX81; ZX Spectrum; e MSX, entre outros.

Vejamos nosso primeiro programa no MSX BASIC, emulado no BlueMSX.

msx1

A seguir, a saída de tela resultante das instruções PRINT nas linhas 40, 50, 60 e 80.

msx2

Foram utilizadas as instruções PRINT sem argumentos nas linhas 35, 45, 55, 65 e 85 apenas para introduzir um linha vazia após as saídas (outputs).

Assim como no BASIC do Sinclair ZX81, foram utilizadas as instruções LET e REM.  E a variável string deve ter o caractere $ (cifrão) como sufixo.

Se quiser matar saudades, veja alguns exemplos de aplicativos feitos para o MSX no MSX.bas.

C# – primeiro programa

csharp

De uma forma simplificada, e tendenciosa, poderíamos afirmar que C# (cê xarpi) é a linguagem de programação (baseada em C++ e Object Pascal) criada pela Microsoft para enfrentar Java, na época da Sun Microsystems (hoje Oracle).

A seguir está a listagem do nosso primeiro programa em C#.

csharp1

E abaixo, a saída na tela:

csharp2

Assim como em Java, inicia-se com a palavra reservada class seguida pelo nome do programa e um bloco contendo o corpo do programa delimitado por chaves.  O método principal é o Main (escrito mesmo com inicial maiúscula).

Em relação a Java, além de trocar System.out por Consoleprintln por WriteLine,  troca-se final por const e String por string (note a inicial minúscula).  Em relação ao C++, troca-se namespace std por System.

A mesma saída de tela acima seria obtida se rodássemos o programa em Java listado a seguir.

class primeiroPrograma
{

public static void main (String args[])

{

int i = 3;
float f = 2.718f;
char c = ‘z’;
String s = “Oi, mundo!”;
final double PI = 3.14159;
final String TEXTO = “Mensagem”;

System.out.println(s);
System.out.println(“Valor da variavel i: ” + i);
System.out.println(“Valor da variavel f: ” + f);
System.out.println(“Valor da variavel c: ” + c);
System.out.println(“Valor da constante PI: ” + PI);
System.out.println(“Valor da constante TEXTO: ” + TEXTO);
//”Valor da …: ” é uma constante não declarada
System.out.println(10);
//10 também é uma constante não declarada

}

}

Quais outras diferenças entre C#, C++ e Java você notou?

C++ – primeiro programa

cpp

De uma forma resumida, podemos definir a linguagem C++ (cê mais mais) como sendo a linguagem C com classes, e orientação a objetos.  Mas, deixando as definições de lado, vamos logo ao nosso primeiro programa em C++.

cpp1

E a seguir vejamos a saída na tela:

cpp2

Observe quantas semelhanças existem entre C e C++.

Comentários de uma linha, em ambas linguagens, podem ser feitos assim:

// comentário

ou

/* comentário */

Comentários com duas ou mais linhas são feitos com /* */, como nas cinco primeiras do exemplo acima.

As diretivas do pré-processador (#include, #define) são as mesmas, mas stdio.h em C++ é iostream.

A instrução using namespace std indica a biblioteca a ser consultada, que neste caso é a padrão.  Por enquanto, apenas aceite que essa instrução deve ser usada.

Em C++ pode-se definir uma constante dentro de um método usando-se a palavra reservada const.  O uso de maiúsculas é recomendado para nomes (identificadores) de constantes.

A instrução cout substitui printf, o operador de inserção << substitui os parênteses e o manipulador endl substitui a sequência de escape \n.  E não foram necessários os especificadores de conversão, formato ou valor, usados no primeiro programa em C (%s, %d, %f, %c).

Dúvidas?

Sinclair ZX81 – primeiro programa

Sinclair-ZX81

Meu primeiro computador pessoal foi um TK85, que foi um clone do Timex Sinclair 1500, lançado no Brasil pela Microdigital, se não me engano, em 1985.  Foi então que comecei a gostar da linguagem BASIC e também Assembly do microprocessador Z-80A.

Veja abaixo o nosso primeiro programa no emulador EightyOne.

za81a

Observe que os números de linha são necessários para que o código seja interpretado como sendo um programa em BASIC.  A instrução LET realiza a inicialização (declaração e atribuição) das variáveis.  As variáveis string (sequência de caracteres) devem ter o sufixo $ (cifrão) em seu nome.  A instrução PRINT envia caracteres para a tela.  E a instrução REM é usada para inserir comentários.

Após a digitar a tecla R, não precedida por número (de linha), a instrução RUN interpreta e executa o programa com a seguinte saída de tela:

za81b

Matou saudades? Vou ver se resgato o material que publiquei no antigo Geocities.  Por ora, não considere alguns links quebrados e escave este site para encontrar relíquias dos anos 80: Datassette.

C – primeiro programa

The_C_Programming_Language,_First_Edition_Cover1

Poderíamos dizer que C é uma linguagem de programação compilada de propósito geral, estruturada e imperativa, blá-blá-blá, mas o que importa é que C é a lingua mater, isto é, a mãe das linguagens de programação, praticamente a preferida de 9 entre 10 programadores.

O programa mais simples em C resume-se à linha seguinte.

main(){}

A palavra main refere-se à principal (e indispensável) função, não apenas em C, como em C++, Java e C# (neste caso, ela é escrita com a primeira letra em maiúsculo: Main).  Sendo uma função, deve ser precedida pelos parênteses (), e conter um bloco de instruções que deve estar entre chaves {}.  Pronto. Esse código é compilável, mas nada faz, já que não contém nenhuma instrução.

Avancemos um pouco, com passos de bebê.

Uma função deve retornar um valor.  O tipo de valor retornado não deveria ser omitido e nem declarado como void.  Portanto, vamos declará-lo como inteiro.

int main(){}

Já que definimos que o tipo de retorno da função main é um inteiro, podemos escolher o valor do inteiro retornado da seguinte forma:

int main(){return 0;}

Incluímos a instrução return com o valor 0. Repare que toda instrução deve ser terminada com um ponto-e-vírgula (;).

Neste caso, a função main não tem declarado, entre seus parênteses, nenhum parâmetro que pudesse receber como argumento qualquer valor.  Se não entendeu essa afirmação, não se preocupe porque mais adiante voltaremos a esse assunto, quando abordarmos a entrada (input) de dados.  Mesmo assim, facultativamente, pode-se incluir a palavra void entre os parênteses.

int main(void){return 0;}

Até agora, o programa zero não faz nada.  Vamos incluir uma instrução para que o programa escreva na tela o texto “Oi, mundo!”.  Essa sequência de caracteres entre aspas duplas (string) será o dado de saída (output) do programa.  Uma das instruções em C para essa finalidade é printf().  Vamos usá-la com o argumento “Oi, mundo!”.

int main(void){printf(“Oi, mundo!”);return 0;}

Ainda assim esse programa, se rodar, não faz nada! O motivo disto é que a função para impressão não foi declarada.  Variáveis, constantes, funções, tudo deve ser declarado antes de ser usado em C.  Como vamos usar uma função que já existe na biblioteca padrão de C, a forma para declará-la é usar a diretiva de compilação #include em uma linha anterior ou posterior.

#include<stdio.h>

int main(void){printf(“Oi, mundo!”);return 0;}

Agora tudo funciona direitinho porque incluímos (include) o arquivo que contém a função printf() da biblioteca padrão (std) de entrada e saída (io) de C.  O compilador transformou nosso arquivo de texto em linguagem de alto nível em um arquivo de bytes em linguagem de máquina (de baixo nível), ligou-o à biblioteca e o carregou na memória para ser executado.  Não se preocupe agora com esses detalhes.  Agora é hora de apresentarmos em C o nosso já conhecido primeiro programa.

#include <stdio.h>
#define PI 3.14159
#define TEXTO “Mensagem”
int main()
{

int i = 3;
float f = 2.718;
char c = ‘z’;
char s[] = “Oi, mundo!”;

printf(“%s”, s);
printf(“\nValor da variavel i: %d” , i);
printf(“\nValor da variavel f: %.3f” , f);
printf(“\nValor da variavel c: %c” , c);
printf(“\nValor da constante PI: %.5f” , PI);
printf(“\nValor da constante TEXTO: %s” , TEXTO);
//”Valor da …: ” é uma constante não declarada
printf(“\n%d”, 10);
//10 é uma constante não declarada
return 0;

}

Observe que podemos incluir espaços para melhor legibilidade.  Outras novidades:

  • A diretiva #define serve para definirmos constantes.
  • Declaramos um número inteiro e outro real (de ponto flutuante), um caractere e uma string (sequência de caracteres).
  • Dentro das strings nas instruções printf utilizamos as notações \n e %xxx a serem entendidas mais tarde – a não ser que você seja muito curioso e faça suas próprias pesquisas no Google.

O nosso primeiro programa pode ser escrito no Bloco de Notas, no Code::Blocks, no Eclipse, no Dev-C++ etc.  Veja-o abaixo rodando no prompt de comando do Windows.

c1

Na internet você pode encontrar diversos cursos e tutoriais sobre C e outras linguagens, e o YouTube é uma boa opção.

Python 3 – primeiro programa

python

Python é uma linguagem de programação de alto nível (assim como todas as que abordamos até agora), interpretada (como Ruby e BASIC), de script (idem), imperativa, orientada a objetos, funcional, de tipagem dinâmica e forte, surgida em 1991.  Está na moda, em plena ascensão, ficando atrás no índice TIOBE apenas de Java, C, C++ e C#.

Veja abaixo a listagem de nosso primeiro programa em Python 3.

python1

Observe que, assim como em BASIC e Ruby, o tipo da variável é definido pelo valor atribuído na inicialização.  Não há constantes, apenas variáveis.  Se quiser uma constante, simplesmente garanta que o valor de uma variável não se altere em tempo de projeto e de execução.

Assim como os demais primeiros programas, este é um programa simples, sequencial, sem entrada (input) de dados, com saída (output) de dados arbitrariamente pré-definidos.  Por isso, tem finalidade apenas didática, para apresentar os conceitos mais básicos da programação de dispositivos, como computadores, celulares etc.

Caracteres e strings (sequências de caracteres) são equivalentes e podem estar entre aspas simples ou aspas duplas.

A instrução de escrita na saída padrão, que é a tela, é a mais óbvia: print().

Observe a seguir o script acima ao final do tempo de execução.

python2

O shell mostrado acima é o interpretador, terminal ou prompt de comandos.

Dúvidas?

 

 

Extended Color BASIC – primeiro programa

 

coco2mocha

Para matar saudades de quarentões e quarentonas, vamos ver como ficaria o nosso primeiro programa no Extended Color Basic do CP 400 Color II (TRS-80 Coco 2).

Usando o emulador Mocha é possível escrever (usando números de linha), salvar (CSAVE), carregar (CLOAD) e rodar (RUN) o programa listado abaixo.  Para se ver todo o código, listamos (LIST) em duas vezes.

coco2mocha1

coco2mocha2

Primeiro listamos até a linha 90 e depois, da 90 em diante.

Observe que o tipo da variável é definido pelo valor na inicialização, mas o identificador de uma variável string precisa ter o sufixo cifrão ($).  E os comentários são precedidos pela instrução REM (que significa remember).

A seguir, veja como fica o nosso primeiro programa em tempo de execução.

mocha

Assim como o Ruby e o Python (que estará em um próximo post), o BASIC geralmente é uma linguagem interpretada, isto é, não compilada.

Felizmente há bastante material sobre BASIC e o saudoso micro(computador) Coco 2 na Internet, mas destaco os sites Color Computer Archive e AMEX Project.