program Tarea;
{$AppType CONSOLE}

uses
  SysUtils;

Type
  horos_arr = Array[1..12] of string;

var
  nombre    : string;
  fecha_dia : integer;
  fecha_mes : integer;
  fecha_aaa : integer;
  nom_signo : string;
  ind_horos : integer;
  horoscopo : horos_arr;

begin
  horoscopo[1]:='Tendras suerte, abundancia y estabilidad, una combinacion perfecta. Necesitas crecer para este anio. Se vienen nuevos cambios, de moverte de casa, ciudad, pais o de trabajo.';
  horoscopo[2]:='Son momentos de crecer, hay que empezar con pensamientos positivos. Compra una casita o un auto. Ve al doctor e invierte en ti mismo. Olvidate de los demas. Se viene un amor que te hara feliz.';
  horoscopo[3]:='Son tiempos de tomar acciones, de pensar en ti. Sigue haciendo ejercicio. Ve con el dermatologo. Ya no pienses en lo que pudo ser. Ya no existe el pasado y trata de pensar en lo demas. ';
  horoscopo[4]:='Debes entender que estas preparado para triunfar y ser el lider de sacar adelante a toda la gente que esta cerca de ti. Te llegara bien un nuevo proyecto. No te fies de todos. ';
  horoscopo[5]:='Sera una gran semana, recuerda cuidarte en todos los sentidos, no seas tan acelerado. Debes encontrar el proposito en tu vida. Necesitas reinventarte. El tiempo se va y ya no regresa, debes estar muy consciente de esto.';
  horoscopo[6]:='Sera una semana de mucho trabajo, tal vez no te sientas bien, pero necesitas seguir adelante. Trata de quitarte a las personas toxicas que estan a tu alrededor. Cambia tu look. Se viene un golpe de suerte en cuestiones economicas.';
  horoscopo[7]:='Sera una semana de mucho trabajo y proyectos nuevos. Te estan ofreciendo un nuevo empleo, con el que tendras mas dinero. Trata de sacar tu Visa o tu pasaporte, porque sera un anio de muchos viajes.';
  horoscopo[8]:='Sera un gran anio para ti. Te buscaran personas del pasado para cerrar esos ciclos. Estas destinado a brillar sin cesar. Cuidate mucho. No dejes que cualquier persona te limite. Suelta a esa persona o trabajo que no era para ti.';
  horoscopo[9]:='No te limites en tus proyectos ni en ti mismo, no tengas miedo. Prepara tus documentos porque saldras mucho de viaje. Tendras algunos viajes de trabajo. Cuidate de las emociones, trata de pensar bien a donde vas.';
  horoscopo[10]:='Necesitas tener calma, recuerda que todo pasa, suelta las cosas. Esta semana es tiempo de buscar retos. Trata de buscar cursos de baile. No tengas miedo al que diran. Necesitas mantenerte constante.';
  horoscopo[11]:='Debes creer que eres capaz de hacer las cosas. Cuidado con los pleitos de pareja. Trata de ocupar tu mente. Te buscara un familiar para un apoyo, recuerda que eres uno de los pilares mas importantes.';
  horoscopo[12]:='Son tiempos de crecer, son momentos de los que tienes que aprender, siempre vendran nuevas oportunidades. Podras resolver una situacion economica que tenias pendiente. Es tu anio, que no se te olvide.';

  WriteLn(Output, 'Cual es tu nombre?');
  ReadLn(Input, nombre);
  WriteLn(Output, nombre+' Te dire tu signo zodiacal');

  WriteLn(Output, ' Cual es el dia de tu fecha de nacimiento?');
  ReadLn(Input, fecha_dia);
  WriteLn(Output,' Cual es el mes de tu fecha de nacimiento?');
  ReadLn(Input, fecha_mes);
  WriteLn(Output,' Cual es el anio de tu fecha de nacimiento?');
  ReadLn(Input, fecha_aaa);
  
  WriteLn(Output,IntToStr(fecha_dia)+'/'+IntToStr(fecha_mes)+'/'+IntToStr(fecha_aaa));
  ind_horos := 0;

  if (fecha_mes = 1) and (fecha_dia <= 19) then
    begin
      nom_signo:= 'Capricornio';
      ind_horos:= 1;
    end;
  if (fecha_mes = 1) and (fecha_dia >= 20) then
    begin
      nom_signo:= 'Acuario';
      ind_horos:= 2;
    end;
  if (fecha_mes = 2) and (fecha_dia <= 18) then
    begin
      nom_signo:= 'Acuario';
      ind_horos:= 2;
    end;
  if (fecha_mes = 2) and (fecha_dia >= 19) then
    begin
      nom_signo:= 'Piscis';
      ind_horos:= 3;
    end;
  if (fecha_mes = 3) and (fecha_dia <= 20) then
    begin
      nom_signo:= 'Piscis';
      ind_horos:= 3;
    end;
  if (fecha_mes = 3) and (fecha_dia >= 21) then
    begin
      nom_signo:= 'Aries';
      ind_horos:= 4;
    end;
  if (fecha_mes = 4) and (fecha_dia <= 19) then
    begin
      nom_signo:= 'Aries';
      ind_horos:= 4;
    end;
  if (fecha_mes = 4) and (fecha_dia >= 20) then
    begin
      nom_signo:= 'Tauro';
      ind_horos:= 5;
    end;
  if (fecha_mes = 5) and (fecha_dia <= 20) then
    begin
      nom_signo:= 'Tauro';
      ind_horos:= 5;
    end;
  if (fecha_mes = 5) and (fecha_dia >= 21) then
    begin
      nom_signo:= 'Geminis';
      ind_horos:= 6;
    end;
  if (fecha_mes = 6) and (fecha_dia <= 20) then
    begin
      nom_signo:= 'Geminis';
      ind_horos:= 6;
    end;
  if (fecha_mes = 6) and (fecha_dia >= 21) then
    begin
      nom_signo:= 'Cancer';
      ind_horos:= 7;
    end;
  if (fecha_mes = 7) and (fecha_dia <= 22) then
    begin
      nom_signo:= 'Cancer';
      ind_horos:= 7;
    end;
  if (fecha_mes = 7) and (fecha_dia >= 23) then
    begin
      nom_signo:= 'Leo';
      ind_horos:= 8;
    end;
  if (fecha_mes = 8) and (fecha_dia <= 22) then
    begin
      nom_signo:= 'Leo';
      ind_horos:= 8;
    end;
  if (fecha_mes = 8) and (fecha_dia >= 23) then
    begin
      nom_signo:= 'Virgo';
      ind_horos:= 9;
    end;
  if (fecha_mes = 9) and  (fecha_dia <= 22) then
    begin
      nom_signo:= 'Virgo';
      ind_horos:= 9;
    end;
  if (fecha_mes = 9) and (fecha_dia >= 23) then
    begin
      nom_signo:= 'Libra';
      ind_horos:= 10;
    end;
  if (fecha_mes = 10) and (fecha_dia <= 22) then
    begin
      nom_signo:= 'Libra';
      ind_horos:= 10;
    end;
  if (fecha_mes = 10) and (fecha_dia >= 23) then
    begin
      nom_signo:= 'Escorpio';
      ind_horos:= 11;
    end;
  if (fecha_mes = 11) and (fecha_dia <= 21) then
    begin
      nom_signo:= 'Escorpio';
      ind_horos:= 11;
    end;
  if (fecha_mes = 11) and (fecha_dia >= 22) then
    begin
      nom_signo:= 'Sagitario';
      ind_horos:= 12;
    end;
  if (fecha_mes = 12) and (fecha_dia <= 21) then
    begin
      nom_signo:= 'Sagitario';
      ind_horos:= 12;
    end;
  if (fecha_mes = 12) and (fecha_dia >= 22) then
    begin
      nom_signo:= 'Capricornio';
      ind_horos:= 1;
    end;

  WriteLn('Tu signo es: '+nom_signo);
  WriteLn('');
  WriteLn(ind_horos);
  WriteLn('Tu horoscopo es: '+horoscopo[ind_horos]);
  WriteLn('');
  WriteLn('Presiona enter para salir');
  ReadLn(nombre);
end. 

Pascal online compiler

Write, Run & Share Pascal code online using OneCompiler’s Pascal online compiler for free. It’s a straightforward, accessible way to learn and experiment with Pascal programming right from your browser. OneCompiler supports modern Pascal syntax and provides a ready-to-use editor for immediate execution.

About Pascal

Pascal is a procedural programming language developed in the 1970s by Niklaus Wirth. It was designed to encourage good programming practices and structured programming. Pascal is widely used in teaching computer science fundamentals and has influenced many modern languages.

Sample Code

The following is a simple Pascal program that prints a greeting:

program HelloWorld;
begin
  writeln('Hello, OneCompiler!');
end.

Taking inputs (stdin)

OneCompiler’s Pascal editor supports stdin through the I/O tab. Here’s an example that reads a user's name and prints a greeting:

program GreetUser;
var
  name: string;
begin
  readln(name);
  writeln('Hello, ', name, '!');
end.

Syntax Basics

Variables

var
  age: integer;
  name: string;
  score: real;
  flag: boolean;

Data Types

TypeDescription
integerWhole numbers
realFloating-point numbers
charSingle character
stringSequence of characters
booleanTrue or False

Conditionals

if score >= 50 then
  writeln('Pass')
else
  writeln('Fail');

Loops

For loop

for i := 1 to 5 do
  writeln(i);

While loop

i := 1;
while i <= 5 do
begin
  writeln(i);
  i := i + 1;
end;

Repeat-Until loop

i := 1;
repeat
  writeln(i);
  i := i + 1;
until i > 5;

Procedures and Functions

procedure SayHello;
begin
  writeln('Hello!');
end;

function Add(a, b: integer): integer;
begin
  Add := a + b;
end;

This guide provides a quick reference to Pascal programming syntax and features. Start coding in Pascal using OneCompiler’s Pascal online compiler today!