BlackTDN Search

segunda-feira, 30 de janeiro de 2012

Desenvolvimento :: Basic - Beginner's All-purpose Symbolic Instruction Code“Old School”

Esse final de semana matei a saudade de um velho e grande amigo… o meu querido CP 400 Color .. hehehe…

Muitas noites em claro escrevendo inumeras linhas para fazer pequenos pontos na tela… pequenos jogos… e ate mesmo a ousadia de alguns graficos…

E pensar que naquela epoca…BASIC era tudo de bom e mais um pouco…

Ou como diria a dupla Thayde e Dj Hum (Que tempo bom… que nao volta nunca mais…)

Criada a partie de Fortran II E inspirada em partes em Algol 60, com adições para torna-la adequada ao time-sharing, caracteristica presente em sistemas JOSS, CORC e LISP.

C COMPUTE POSITIVE ROOT OF A

C QUADRATIC EQUATION

READ IMPUT TAPE 3, 201, A, B, C

…..

Em seguida a linguagem foi precedida de outros experimentos, como as implementações de SAP e DART (um Fortran II simplificado) DARSIMCO e DOPE. Em sua versao original o BASIC possuia apenas 15 comandos:

LET

READ

DATA

PRINT

GOTO

IF-THEN

FOR-TO-STEP

NEXT

END

STOP

DEF

GOSUB

RETURN

DIM

REM

Lembrando que era normal o intervalo de linhas para o desenvolvimento correr de 10 em 10 linhas, e alem disso fornecia funções como SIN (seno) e ABS (absoluto).

10  REM RESOLVE EQUACAO DO SEGUNDO GRAU
20  READ A,B,C
25  IF A=0 THEN GOTO 410
30  LET  D=B*B-4*A*C
40  IF D<0 THEN GOTO 430
50  PRINT "SOLUCAO"
60  IF D=0 THEN GOTO 100
70  PRINT "PRIMEIRA SOLUCAO",(-B+SQR(D))/(2*A)
80  PRINT "SEGUNDA SOLUCAO",(-B-SQR(D))/(2*A)
90  GOTO 20
100 PRINT "SOLUCAO UNICA",(-B)/(2*A)
200 GOTO 20
410 PRINT "A DEVE SER DIFERENTE DE ZERO"

420 GOTO 20
430 PRINT "NAO HA SOLUCOES REAIS"
440 GOTO 20
490 DATA 10,20,1241,123,22,-1
500 END

ANSI BASIC

INPUT "Qual é o seu nome"; UserName$
PRINT "Hello "; UserName$
DO
   INPUT "Quantas estrelas você quer"; NumStars
   Stars$ = ""
   Stars$ = REPEAT$("*", NumStars)  
REM em MS BASIC a instrução seria Stars$ = STRING$(NumStars, "*") 
   PRINT Stars$
   DO
      INPUT "Você quer mais estrelas";  Answer$
   LOOP UNTIL Answer$ <> ""
   Answer$ = LEFT$(Answer$, 1)
LOOP WHILE  UCASE$(Answer$) = "Y"
PRINT "Adeus ";
FOR I = 1 TO 200
   PRINT UserName$; " ";
NEXT I
PRINT

 

Enfim, matar a saudade muitas vezes é bacana… saudades dessa epoca! Bom, mas agora vou retomar COCOA e Object-C, afinal “OverFail” retornou da Terra do Nunca pra dar continuidade nessa louca aventura pelo mundo do iOs… ah e para os usuarios do Android tem surpresa boa chegando… hehehe!

 

Rodrigo “OverFail”

2 comentários:

  1. Falaew Rodrigo (O Abduzido)

    Hehe... Fiz muitos joguinhos em Basic... Na realidade foi a partir de Basic que fui "introduzido" na "era" da programação...

    ResponderExcluir
  2. http://www.datacassete.com.br/manuais/detail/TK85-Programacao-BASIC/65.html

    ResponderExcluir