Post Reply 
[HP-Prime] Introduccion a la programacion
01-19-2014, 07:53 PM (This post was last modified: 01-19-2014 11:07 PM by compsystems.)
Post: #1
[HP-Prime] Introduccion a la programacion
Ejemplo #1 esqueleto de un programa

Code:
// * Este ejemplo es simplemente para ver el esqueleto de un programa.
export sin_titulo()
begin
    print("\tHola\nMundo");
end;

Ejemplo #2 definicion de algunos tipos de variables

Code:
// definicion de algunos tipos de variables
export sin_titulo() // Proceso sin_titulo
begin // Inicio Proceso
    print(); // limpiar pantalla 
    print( "*** Ejecución Iniciada. ***" );// sentencia opcional 
    local a; // definir a, no requiere especificar el tipo 
    local b,c,d,f,p;  // hay que definir todas las variables de este bloque
    a:=1; // a<-1; // entero
    print(a); // Escribir a; 
    
    b:=2.5; // real 
    print(b);
    
    c:=true; // bool
    print(c);
    
    d:=false; // bool
    print(d);
    
    f:="Hola Mundo"; // cadena
    print(f);
    print("\tHello\nworld");
    
    input(p); // Leer p;
    print(p); // Escribir p;

    print( "*** Ejecución Finalizada. ***" ); // sentencia opcional
end; // FinProceso

Ejemplo #3 definiciones, lectura, impresion de datos uno a uno y multiples
Code:
// definiciones, lectura, impresion de datos uno a uno y multiples

export sin_titulo() // Proceso sin_titulo
begin // Inicio Proceso
   print(); // limpiar pantalla 
   print( "*** Ejecución Iniciada. ***" ); // sentencia opcional
   // definiciones de a uno
   local a; // definir a
   local b; // definir b
   local c; // definir c
   local d; // definir d

   // definiciones multiples
   local a,b,c,d; // definir a, b, c ... 
    
   // leer de a uno
   input( a ); // Leer a
   input( b ); // Leer b
   input( c ); // Leer c
   input( d ); // Leer d

   // escribir de a uno
   print( a ); // imprimir a
   print( b ); // imprimir b
   print( c ); // imprimir c
   print( d ); // imprimir d
 
   // lecturas múltiples
   input( { a,b,c,d } ); 
 
   // escrituras múltiples
   print( a+" "+b+" "+c+" "+d ); 

   print( "*** Ejecución Finalizada. ***" ); // sentencia opcional

   // escritura sin salto de linea al final NO SOPORTADO

end; // Fin Proceso

Ejemplo #4 estructuras condicionales y repetitivas más simples

En el siguiente ejemplo, el ciclo "ciclo repeat2" no esta realizando lo que debe hacer por que? (BUG de la calculadora?) quien me ayuda a descubrir el problema

Code:
// Este ejemplo es para observar las estructuras condicionales y 
// repetitivas más simples

export sin_titulo() // Proceso sin_titulo
begin // Inicio Proceso
   print(); // limpiar pantalla 
   print( "*** Ejecución Iniciada. ***" ); // sentencia opcional
 
   Local c;  // varible del contador
   
   print( "ciclo while");
    c:=0;
    while c<=10 do
        c:=c+1;
        print( c );
    end; // FinMientras
    
    print( "ciclo repeat");
    c:=0;
    repeat // Repetir 
        c:=c+1;
        print( c );
    until c=10; // Mientras que
    
    print( "ciclo repeat2");
    c:=0;
    repeat // Repetir 
        c:=c+1;
        print( c );
    until c<10; // Mientras que
    
    print( "condicional if then");
    if c=10 then
        print("Si");
    end; // FinSi
    
    print( "condicional if then else"); 
    if c=10 then
        print("Si");
    else
        print("No");
    end; // FinSi
    print( "*** Ejecución Finalizada. ***" ); // sentencia opcional

end; // Fin Proceso

ejemplo #5 manipulacion de arreglos, pero no se por que me falla en leer de uno y multiples usando input (BUG de la calculadora?), por favor revisar codigo

Code:
// manipulacion de arreglos
export sin_titulo() // Proceso sin_titulo
begin // Inicio Proceso
   print(); // limpiar pantalla 
   print( "*** Ejecución Iniciada. ***" ); // sentencia opcional
   // definiciones de a uno
   local a:= makeMat( 0, 10 ); // definir y crea una arreglo unidimensional de 0s de dimension de 10 elementos
   local b:= makeMat( 0, 20, 30 ); // definir y crea una arreglo bidimensional de 0s de dimension de 20*30 elementos; 

   // definiciones multiples no soportado
   local c:= makeMat( 0, 40 ); 
   local d:= makeMat( 0, 50, 5 ); 

   // escribir de a uno
   print( a(1) ); // Imprime el elemento 1 del arreglo a, => 0
   print( a(1)+8.5 ); // Imprime el elemento 1 del arreglo a 8.5 => 0+8.5
   print( a(10) ); // Imprime el elemento 10 del arreglo a => 0
   print( b(1,1) ); // Imprime el elemento (1,1) del arreglo b => 0

   // dimension dada por usuario

    local n; // requiere predefinir la variable antes
    input( n ); 
    print(n);
    local ee:= makeMat( 0, n ); // crea una arreglo con dimension entrada por pantalla
    print( ee(1)+2.4 ); // Imprime el elemento 1  del arreglo e => 0+2.4
   
    // asignación arreglo unidimensional
    a(1):=0.3
    a(10):=a(1);
    print( a(10) ); 
    
    // asignacion arreglo bidimensional
    b(10,10):= 0.9;
    print( b(10,10) ); 
    print( b(10,10)+0.2 ); 

    // leer de a uno
    input( a(1) ); 
    print( a(1) ); 
    
    // lecturas múltiples
    input( { a(2), a(3) } );
    print( a(2)+" "+a(3) ); 

    print( "*** Ejecución Finalizada. ***" ); // sentencia opcional

end; // Fin Proceso

ejemplo #6; asignacion de valores en un arreglo por medio de for


Code:
// asignacion de valores en un arreglo por medio de for

el ultimo bloque for no esta imprimiendo, cual es la causa?

export sin_titulo() // Proceso sin_titulo
begin // Inicio Proceso
   print(); // limpiar pantalla 
   print( "*** Ejecución Iniciada. ***" ); // sentencia opcional

   local a:= makeMat( 0, 10 );
   local c;

    for c from 1  to 10 do
       a(c) := c*10;
    end;//  FinPara
    
    print( "impreme los 10 elementos de a");
    for c from 1  to 10 do
       print ( a(c) ); // imprime cada elemento
    end; //  FinPara

    local b:= makeMat( 0, 3, 6 );
   
    c:=0;
    local fila,column;
    for fila from 1 to 3  do 
        for column from 1  to 6 do
              c:=c+1;
              b(fila,column):=c;
        end;//  FinPara
   end;//  FinPara

print( "impreme los 18 elementos de b");
   local fila,column;
   for fila from 1  to 3 do 
        for column from 1  to 6 do
             print (b(fila,column));
        end;//  FinPara
   end;//  FinPara

local fila,column;
   print( "impreme las columnas 1, 3, 5 y las filas 3, 2, 1");
   for fila from 3  to 1 step -1 do 
        for column from 1  to 5 step 2 do
             print ( b(fila,column) );
        end;//  FinPara
   end;//  FinPara
  // salida 13, 15 17 7 9 11 1 3 5 

end; // FinProceso

ejemplo 8: Este ejemplo es para observar la estructura segun:
Code:
// * Este ejemplo es para observar la estructura segun:
Proceso sin_titulo()
    local c; // definir la varible de consulta, puede ser de cualquier tipo
    input(c);  // Leer c;
    case 
       if  c == 1 // 1:
      then 
          print("1");
       end;

       if  c == 3 or   c == 5 or  c == 9  // 3,5,9:
       then 
          print("3, 5 o 9");
       end;

       if  c == 7 then // 7:
          print("7");
       end;
   
       default // De otro modo: // opcional
            print("ni 1, ni 3, ni 5, ni 7, ni 9");
    end; //FinSegun

end; // FinProceso
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)