Entorno de desarrollo para Ada

Imagen de Javier M.
+1
0
-1

Abre un terminal:

sudo aptitude install gnat gnat-gps

Para abrir el gps, desde terminal teclea gnat-gps, o si quieres le pudes crear un acceso directo.

Un saludo. 

 


Equipo de moderadores
Normas

Documentación

 

+1
0
-1
Imagen de Necrotzar
+1
0
-1

Gracias javier!

BUENICIMO..! muy buena solución! :-) ;-)

solo me falta investigar como haces un ejecutable en Ada para Linux.. no logro compilar y ejecutar lo que escribo..

creo que vengo mal acostumbrado con windwos y sus .exe

 

+1
0
-1
Imagen de Necrotzar
+1
0
-1

 

este entorno de desarrollo puede ser pasado al español ?¿ 

+1
0
-1
Imagen de yago83
+1
0
-1

Hola cuando haces un programa en Ada que se ejecuta, digamos que tienes que seguir 3 pasos,
Compiling=>(gcc -c)El tipico chequeo de errores etc...
Binding=>(gnatbind) Verifica que todos los archivos en el proyecto estan actualizado, si hay archivos que necesitan ser compilador, gnatmake lo hara de forma automatica.
Linking=>(gnatlink)Combina todos los objetos para crear el ejecutable.

Si es un simple programa como el tipico que da la salida "Hello World" con usar gnatmake en el fichero .adb ya crea directamente varios archivos entre ellos el ejecutable.

+1
0
-1

The past is gone but the future is mine

Imagen de yago83
+1
0
-1

The past is gone but the future is mine

+1
0
-1

The past is gone but the future is mine

Imagen de peter977
+1
0
-1

yo hice lo mismo ue ustedes abri la terminal lo instale y lo guarde con extension.dba
luego lo compile como:

genatmake dever.dba
./dever

este es mi codigo ya lo corri en un programa que esta en modo grafico, pero en terminal(consola) lo quise correr y no me dice que la orden no esta encontrada alli que debo de hacer?

este es mi codigo de desviacion estandar en programado en ada

-- Desarrollador: Pedro Lopez Salazar
-- Función del Programa: Cálculo de la media y desviación estándar
-- de una serie de números reales almacenados
-- en una lista ligada implementada en un arreglo

with
ada.text_IO, --PAQUETE DE LIBRERIAS PARA EL MANEJO DE TEXTO Y ARCHIVOS (INPUT / OUTPUT)
Ada.Numerics.Generic_Elementary_Functions, -- PAQUETE DE FUNCIONES MATEMATICAS
ada.integer_text_IO; -- PAQUETE DE FUNCIONES PARA ENTEROS
use
ada.text_IO, -- USAR EL PAQUETE "text_IO"
ada.integer_text_IO, -- USAR EL PAQUETE "ada.integer_text_IO"
Ada.Numerics; -- USAR EL PAQUETE "Ada.Numerics"

procedure desviacionEstandar is
------------------------------------------------------------------------------------------
--///// DECLARACIONES PZARA LA IMPLEMENTACION DE LA DESVIACION ESTANDAR ////////--
------------------------------------------------------------------------------------------
numerosCaptura : INTEGER := 0;
Index : INTEGER;
Numeros : array(INTEGER range 1..15) of INTEGER;
sumaNums : INTEGER := 0;
XPromedio : FLOAT := 0.0;
sumaDesv : FLOAT;
error : BOOLEAN := FALSE;
--DECLARACIONES PARA PODER UTILIZAR LAS FUNCIONES DE MATEMATICAS BASICAS --
-- DEFINO UN PAQUETE GENERICO OBTENIDO DEL "text_IO" LLAMADO "MiFloat_IO"
package MiFloat_IO is new Float_IO(float);
----------------------------------------------------------------------------
-- DEFINO UN PAQUETE GENERICO PARA LAS FUNCIONES ELEMENTALES DE MATEMATICAS
-- PARA USARLOS CON EL TIPO DE DATO "FLOAT" Y LLAMADO "Funciones"
package Funciones is new Generic_Elementary_Functions(float);
----------------------------------------------------------------------------
-- FINALMENTE INDICO QUE ESTOS PAQUETES SE UTILIZARAN EN EL PROCEDIMIENTO
use MiFloat_IO, Funciones;

begin
put("Programa para Calcular la Desviacion Estandar"); new_line; new_line;
put("Introdusca el Numero de Elementos que va a almacenar: ");
Get(numerosCaptura); new_line; --OBTENGO EL VALOR DESDE EL TECLADO
-- VALIDO EL NUMERO DE ELEMENTOS
loop
if not(numerosCaptura > 3 and numerosCaptura <= 15) then
put(" ERROR: El Valor (N) debe de estar entre 3 < N y N<= 15 ( 4 y 15 ) "); New_Line;
put("Introduzca los valores a almacenar en el arreglo: ");
Get(numerosCaptura);
error := true;
else
error := false;
end if;
exit when error = false;
end loop;
new_line;
if not error then
Index := 1;
loop
put("Introdusca el Elemento: [" & Integer'Image (Index) & " ] : " );
Get(Numeros(Index)); -- OBTENGO EL VALOR DEL TECLADO Y ALMACENO EL
-- VALOR EN LA POSICION I-ESIMO DEL ARREGLO

--VALIDO QUE SOLO ESCRIBA NUMEROS ENTRE 5 y 100
loop
if not (Numeros(Index) >= 5 and Numeros(Index) <= 100) then
put(" ERROR: Introdusca un Numero entre 5 Y 100"); New_Line;
put("Introdusca el Elemento: [" & Integer'Image (Index) & " ] : ");
Get(Numeros(Index));
error := True;
else
error := False;
end if;
exit when error = false;
end loop;
sumaNums := sumaNums + Numeros(Index); -- HAGO LA SUMA DE TODOS LOS NUMEROS
exit when Index = numerosCaptura; -- COMPARO CUANDO LA CONDICION DEL BUCLE
Index := Index + 1; -- INCREMENTO EL CONTADOR
end loop;
--CALCULO EL PROMEDIO (Sumatoria Xi) / N
--------------------------------------------------------
XPromedio := (Float(sumaNums) / Float(numerosCaptura));
--------------------------------------------------------
-- IMPRIMO LA LISTA DE ELEMENTOS
-- REALIZO LA SUMATORIA DE LAS DESVIACIONES AL CUADRADO
Index := 1;
loop
--put("Elemento [ " & Integer'Image (Index) & " ] = [ " & Integer'Image (Numeros(Index)) & " ]" ); New_Line;
-- CALCULO LA SUMATORIA DE LAS DESVIACIONES: Sumatoria de (Xi - XPromedio)
------------------------------------------------------------------
sumaDesv := sumaDesv + ((Float(Numeros(index)) - xPromedio) ** 2);
------------------------------------------------------------------
exit when Index = numerosCaptura;
Index := Index + 1;
end loop;
--Put_Line ("SumaDesv sin Cuadrado = " & Float'Image(sumaDesv));
New_Line;
-- CALCULO LA DESVIACIÓN ESTANDAR
------------------------------------------------------------------
sumaDesv := sqrt( (sumaDesv / Float(numerosCaptura - 1)) );
------------------------------------------------------------------
Put_Line ("X Promedio = " & Float'Image(XPromedio));
Put_Line ("S El Calculo de la Desviacion Estandar es: " & Float'Image(sumaDesv) & " ");
end if;
end desviacionEstandar;

+1
0
-1
Imagen de peter977
+1
0
-1

en c compilo me meto a mi escritorio con este comando: CD Escritorio/
y compilo con gcc -wall hola.c
/Escritorio

ya le puse genatmake dever.dba y no compila a lli que hago

+1
0
-1
Imagen de fanamuri
+1
0
-1

pss fijate en los archivos que te da a la salida, si no tienes errores te va a salir uno sin extension. A ese le pones "/" antes y le das enter y te lo corre.

+1
0
-1
Imagen de peter977
+1
0
-1

en c compilo me meto a mi escritorio con este comando: CD Escritorio/
y compilo con gcc -wall hola.c
/Escritorio

ya le puse genatmake dever.dba y no compila a lli que hago

+1
0
-1
Imagen de peter977
+1
0
-1

en c compilo me meto a mi escritorio con este comando: CD Escritorio/
y compilo con gcc -wall hola.c
/Escritorio

ya le puse genatmake dever.dba y no compila a lli que hago

+1
0
-1