Foros del Web » Programación para mayores de 30 ;) » Programación General »

Formato de WriteLn en Pascal (Es urgentillo)

Estas en el tema de Formato de WriteLn en Pascal (Es urgentillo) en el foro de Programación General en Foros del Web. Lo primero decir que en el foro ponen esta sección en 'Programación para mayores de treinta' y yo tengo bastante menos que eso... Hace poco ...
  #1 (permalink)  
Antiguo 01/02/2015, 13:42
Avatar de m40s  
Fecha de Ingreso: agosto-2014
Ubicación: Madrid
Mensajes: 35
Antigüedad: 10 años, 2 meses
Puntos: 1
Exclamación Formato de WriteLn en Pascal (Es urgentillo)

Lo primero decir que en el foro ponen esta sección en 'Programación para mayores de treinta' y yo tengo bastante menos que eso...

Hace poco empecé con Pascal(fpc) y ahora he hecho un programilla bastante sencillo para sacar el área de un triangulo. El programa en cuestión es este:
Código:
program triangles;
{$H-}

{Creado por M40S http://m40s.info}

var
  bas: double;
  alt: double;
  res: double;
function reade(): double;
  var
    ex: double;

  begin
    readln(ex);

    if ex= 0 then
      begin
        writeln('El numero que ha ingresado no es válido, por favor ingrese otro:');
        reade();

      end

    else
      begin
        reade:= ex;

      end;

end;

begin
  writeln('Con este programa usted podrá calcular el area de cualquier triangulo.');
  writeln('Escriba a continuación la base del triangulo a calcular:');
  bas:= reade();
  writeln('Escriba a continuación la altura:');
  alt:= reade();
  res:= bas*alt/2;

  writeln('La base del triangulo es:', res);
  
end.
El problema que tengo es que abajo del todo, donde pone
Código:
writeln('La base del triangulo es:', res);
me devuelve el número en notación científica. Googleando encontré que la solución era poner
Código:
writeln('La base del triangulo es:', res:0:10);
y eso está bastante bien pero tiene dos fallos, el primero es que me muestra todos los ceros que hay hasta que el número tenga 10 decimales y el segundo es que si los decimales del número superan los 10 se redondea. Yo lo que quiero es que me muestre el número sin notación científica y con todos los decimales que tenga, ni más ni menos. ¿Es posible? ¿Cómo?

También tengo otra pequeña duda, cuando compilo el programa mediante la terminal (uso linux) con el comando 'fpc triangulos.pas' me lo compila pero sale algo que me desconcierta: es esto:
Código:
Free Pascal Compiler version 2.6.2-8 [2014/01/22] for i386
Copyright (c) 1993-2012 by Florian Klaempfl and others
Target OS: Linux for i386
Compiling triangulos.pas
Linking triangulos
/usr/bin/ld.bfd: aviso: link.res contiene secciones de salida. ¿Olvidó -T?
39 lines compiled, 0.0 sec
No entiendo lo de "/usr/bin/ld.bfd: aviso: link.res contiene secciones de salida. ¿Olvidó -T?". ¿A qué se debe?

Ojalá me sepan responder y muchas gracias de antemano. Bye.

Última edición por m40s; 01/02/2015 a las 13:55
  #2 (permalink)  
Antiguo 02/02/2015, 13:38
Avatar de m40s  
Fecha de Ingreso: agosto-2014
Ubicación: Madrid
Mensajes: 35
Antigüedad: 10 años, 2 meses
Puntos: 1
Sonrisa Respuesta: Formato de WriteLn en Pascal (Es urgentillo)

Después de buscar un montón al final he encontrado la solución y era bastante más simple de lo que yo pensaba. Explico como solucionarlo en una entrada que posteé en mi blog por si a alguien le interesa http://www.m40s.info/2015/02/como-dar-formato-un-writeln-que.html
__________________
La cultura es aquello que queda cuando todo lo demás se olvida.
- Un tio raro...

Etiquetas: double, formato, free, pascal
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 02:03.