Ir al contenido

Hola mundo

De Wikipedia, la enciclopedia libre
Esta es una versión antigua de esta página, editada a las 21:49 15 nov 2007 por Garaizar (discusión · contribs.). La dirección URL es un enlace permanente a esta versión, que puede ser diferente de la versión actual.

En informática, un programa Hola mundo (o Hello World, en inglés) es el que imprime el texto «¡Hola, mundo!» en un dispositivo de visualización (generalmente una pantalla de monitor). Se suele usar como introducción al estudio de un lenguaje de programación, siendo un primer ejercicio típico.

El Hola Mundo se caracteriza por su sencillez, especialmente cuando se utiliza en programas de línea de comandos. En interfaces gráficas este programa suele tener una complejidad mayor.

Un programa Hola Mundo puede ser útil como prueba de configuración para asegurar que el compilador, que el entorno de desarrollo, y que el entorno de ejecución están instalados correctamente y funcionando. Configurar un conjunto de herramientas básicas completo desde cero hasta el punto donde hasta los programas triviales puedan ser compilados y ejecutados, puede involucrar una cantidad de trabajo sustancial. Por esta razón, generalmente es usado un programa muy simple para probar un conjunto de herramientas nuevo.

Aunque han existido programas de prueba desde el desarrollo de las primeras computadoras programables, se cree que un ejemplo incluído en el libro El Lenguaje de Programación C fue determinante en la tradición de usar Hola Mundo como un mensaje de prueba.

Ejemplos en diferentes lenguajes

REPORT HOLAMUNDO.
WRITE '¡Hola, mundo!'.

En ABC

 WRITE "¡Hola mundo!"
trace("¡Hola, mundo!");

En Ada

with Ada.Text_IO;

 procedure Hola_Mundo is
 begin
    Ada.Text_IO.Put("¡Hola, mundo!");
 end Hola_Mundo;
BEGIN
FILE F (KIND=REMOTE);
EBCDIC ARRAY E [0:12];
REPLACE E BY "HOLA MUNDO!";
WHILE TRUE DO
  BEGIN
  WRITE (F, *, E);
  END;
END.

En ASP

<%

Response.Write("Hola Mundo")

%>

En AWK

#!/bin/awk -f
BEGIN{
  print "¡Hola, mundo!";
}

En Bash

#!/bin/bash
echo "Hola mundo"
@echo off
echo "Hola mundo"
10 print "Hola Mundo"
print "Hola Mundo"
print "Hola Mundo"
Sub Hola_mundo()
  MsgBox "¡Hola, mundo!"
End Sub
Private Sub Form_Load() Handles Form1.Load
  Messagebox.show("¡Hola, mundo!")
End Sub
program PHolaMundo;
uses
  Dialogs;
begin
  MessageDlg('Hola Mundo', mtInformation, [mbOK], 0);
end.

PROGRAM Hola Mundo;

 PRIVATE fuente1;
 BEGIN 
   fuente1 = load_fnt("help\help.fnt");
   write(fuente1, 160, 100, 4, "Hola Mundo"); 
   LOOP 
     FRAME; 
   END 

END

++++++++++
[                   Bucle para iniciar el vector
   >+++++++>++++++++++>+++>+<<<<-
]
>++.              imprime 'H'
>+.               imprime 'e'
+++++++.                  'l'
.                         'l'
+++.                      'o'
>++.                      espacio
<<+++++++++++++++.        'W'
>.                        'o'
+++.                      'r'
------.                   'l'
--------.                 'd'
>+.                       '!'
>.                        nuevalínea

En C

#include <stdio.h>

int main(void)
{
   printf("¡Hola, mundo!\n");
   
   return 0;
}

En C++

#include <iostream>

using namespace std;

int main() {
    cout << "¡Hola, mundo!" << endl;
}

Opción 1

int main()
{
   System::Console::WriteLine("Hola, mundo!");
   return 0;
}

Opción 2

#include <conio.h>
void main
{
 cout<<"Hola mundo";
}

En C#

class MainClass
{
    public static void Main()
    {
        System.Console.WriteLine("¡Hola, mundo!");
    }
}


(printout t "Hola Mundo" crlf)
? "Hola Mundo!"
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
ENVIRONMENT DIVISION.
DATA DIVISION.
PROCEDURE DIVISION.
DISPLAY "Hola mundo".
STOP RUN.
<cfset variable="Hola Mundo">
<cfoutput>#variable#</cfoutput>

En ensamblador de x86 para DOS

.model small
.stack
.data
Cadena1 DB 'Hola Mundo.$'
.code
programa:
   mov ax, @data
   mov ds, ax
   mov dx, offset Cadena1
   mov ah, 9
   int 21h
end programa

En ensamblador de x86 para GNU/Linux (nasm)

section .data

msg db "¡Hola Mundo!", 0Ah len equ $ - msg

section .text

global _start

_start:

       mov     eax, 04h
       mov     ebx, 01h
       mov     ecx, msg
       mov     edx, len
       int     80h
       mov     eax, 01h
       mov     ebx, 00h
       int     80h
on 1:start: {
   echo ¡Hola Mundo!
}

En DOS

En sistemas operativos de la familia DOS como MS-DOS o PC-DOS que usan como shell el intérprete de comandos COMMAND.COM o CMD.EXE (OS/2 y Windows de la rama NT) se pueden crear archivos de proceso por lotes con extensiones .BAT y .CMD respectivamente, con el siguiente contenido:

@echo ¡Hola, Mundo!
class HOLA_MUNDO
create
    make
feature
    make is
        do
            io.put_string("%nHola mundo%N")
        end
end  -- HOLA_MUNDO
-module(hola).
-export([hola_mundo/0]).

hola_mundo() -> io:fwrite("Hola mundo!\n").
PROGRAM HOLA
  PRINT *, '¡Hola, mundo!'
END
println "Hola Mundo!"
holaMundo :: IO ()
holaMundo = do putStrLn ("Hola mundo!")

En HQ9+

H

En HTML

<html>
  <head>
    <title>Hola Mundo</title>
  </head>
  <body>
     ¡Hola Mundo!
  </body>
</html>
PLEASE DO ,1 <- #13
DO ,1 SUB #1 <- #238
DO ,1 SUB #2 <- #112
DO ,1 SUB #3 <- #112
DO ,1 SUB #4 <- #0
DO ,1 SUB #5 <- #64
DO ,1 SUB #6 <- #238
DO ,1 SUB #7 <- #26
PLEASE DO ,1 SUB #8 <- #22
DO ,1 SUB #8 <- #248
DO ,1 SUB #9 <- #168
DO ,1 SUB #10 <- #24
DO ,1 SUB #11 <- #16
DO ,1 SUB #12 <- #158
DO ,1 SUB #13 <- #52
PLEASE READ OUT ,1
PLEASE GIVE UP

En Java

public class HolaMundo
{  
       public static void main(String[] args)
       {
          System.out.println("¡Hola, mundo!");
       }
}

Opción 1

<script>
 alert('¡Hola, mundo!');
</script>

Opción 2

<script type="text/javascript">
  alert("¡Hola mundo!");
</script>

En LISP

(format t "¡Hola, mundo!")
print "¡Hola, mundo!"
escribe [¡Hola mundo!]

Opción 1

hola mundo

Opción 2

Print["hola mundo"]
 disp('hola mundo');       % muestra el mensaje

Opción 1: Con REXX clásico

Utilizando los métodos de REXX clásico:

say "Hola Mundo"
call lineout , 'Hola, mundo.'
call charout , 'Hola, mundo.'||eol /* eol definido previamente */

Opción 2: Utilizando objetos

Utilizando objetos:

.output~say('Hola, mundo.')
.output~lineout('Hola, mundo.')
.output~charout('Hola, mundo.'||eol) -- eol definido previamente
   procedure tform1.button1click (sender:tobject);
   //Despues de crear y presionar el boton "button1"
   begin
   showmessage('HOLA MUNDO');
   end;
   end.
   method holaMundo()
       msgInfo( "", "¡hola mundo!")
   endMethod

Opción 1: Con REXX clásico

Utilizando la instrucción say que proviene de REXX clásico:

say "Hola Mundo"

Opción 2: Con clases y métodos Java

Utilizando clases y métodos Java:

System.out.println("¡Hola mundo!");
  print_string "Hola mundo";;
 #Inventor V2.1 ascii
 Text3 {
   string "Hola mundo"
 }
Program HolaMundo;
begin
    Write('¡Hola, mundo!');
end.

En Perl

#!/usr/bin/perl
print "Hola, mundo.\n";

En PHP

<?php echo 'Hola Mundo!!' ?>
begin
DBMS_OUTPUT.Put_Line( 'Hola Mundo' );  
end;
print "Hola mundo"
write('Hola mundo').
PRINT "Hola mundo"
ShowMessage("Hola, mundo!")

En REXX

say "Hola Mundo"

En Ruby

puts "Hola Mundo"
MAIN
P1    Hola Mundo
/
(let ((HOLA MUNDO
        (lambda ()
          (display "Hola, mundo") 
          (newline))))
   (hola-mundo))

o, simplemente

(display "Hola, mundo\n")
$ include "seed7_05.s7i";

const proc: main is func
  begin
    writeln("Hola Mundo");
  end func;
Transcript show: '¡Hola, mundo!'

En SQL

Variante de Oracle:

SELECT 'HOLA MUNDO'
FROM DUAL;

En Tcl

puts "Hola mundo"
[% GET "Hola mundo!"; %]
```s``sii`ki
``s``s`ks
    ``s``s`ks``s`k`s`kr
              ``s`k`si``s`k`s`k
                              `d````````````.H.o.l.a.,. .m.u.n.d.o.!
                       k
     k
 `k``s``s`ksk`k.*

En X3

SubProg HOLAMUNDO()
   Infbox "Hola Mundo"
End if
? "Hola Mundo"
? "Hola Mundo"
MODULE Hola;
FROM InOut IMPORT WriteLn, WriteString;
BEGIN
  WriteString ("Hola Mundo");
  WriteLn
END Hola.

En Ook!

Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook?
Ook! Ook! Ook? Ook! Ook? Ook. Ook. Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook. Ook? Ook. Ook?
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook?
Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook.
Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook.
Ook! Ook. Ook! Ook? Ook! Ook! Ook? Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook.

Enlaces externos