PDA

Ver la Versión Completa : Error En Este Ejercicio Simple ¬¬


llSnakell
25-01-2011, 20:45:08
No entiendo porque me aparece Este Error si supongo Que Todo Esta Bien
Por Diganme Que Esta Mal Y Por Que ?


unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Label4: TLabel;
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
base,altura,area:real;
begin
base:=StrToFloat(Edit1.Text);
altura:=StrToFloat(Edit2.Text);
area:= base*altura div 2;
label4.Caption:='"El Area Es":'+FloatToStr(Area);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Close;
end;

end.

llSnakell
25-01-2011, 20:45:47
Este Es El Error Se Me Olvido Ponerlo

[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'

Gracias

Casimiro Notevi
25-01-2011, 20:48:00
Por favor, ya te hemos comentado varias veces que pongas títulos descriptivos, que expliques claramente el problema, que pongas etiquetas en el código para que se pueda leer mejor... y todo está explicado en nuestra guía de estilo (http://www.clubdelphi.com/foros/guiaestilo.php), que por lo visto, no has leído.

llSnakell
25-01-2011, 21:01:24
Hola
Disculpa Se Me Olvido No Volvera A Ocurrir !!
A Quien Piense Responder Este Problema Ya Lo Solucione Pero Igual Quisiera Saber
Si El "div" Se Utiliza Solo En Variables Word ? Por Puse Esto (base*altura)/2 Y Ahi Obtuve Buenos Resultados !!
Atte

Gracias

ecfisa
25-01-2011, 21:09:42
Hola
Disculpa Se Me Olvido No Volvera A Ocurrir !!
A Quien Piense Responder Este Problema Ya Lo Solucione Pero Igual Quisiera Saber
Si El "div" Se Utiliza Solo En Variables Word ? Por Puse Esto (base*altura)/2 Y Ahi Obtuve Buenos Resultados !!
Atte
Gracias

Hola llSnakell.

div es una división entera por lo que te truncará cualquier cifra decimal.
Por ejemplo: 13 div 7 da como resultado 1.

En cuanto a la redacción, te estaría muy agradecido que uses las etiquetas vB.
(Ya he agregado etiquetas e identado cuatro mensajes tuyos desde ayer...;) )


Un saludo.

Casimiro Notevi
25-01-2011, 21:13:11
[..]Si El "div" Se Utiliza Solo En Variables Word ? Por Puse Esto (base*altura)/2 Y Ahi Obtuve Buenos Resultados !! [..]

Si usas variables de "tipo entero" como word o integer entonces debes usar 'div'. Para dividir variables de tipo float, double, currency, numeric, etc. entonces usas el signo de dividir '/':


var
iDividendo, iDivisor, iResultado : integer;
dDividendo, dDivisor, dResultado : double;
begin
iResultado := iDividendo div iDivisor;
dResultado := dDividendo / dDivisor;
end;

llSnakell
25-01-2011, 21:19:48
Hola Pero para que Se Utiliza Las Variables Nombradas Como : double,float,corrency numeric ?
Disculpa POr mi Ignorancia Solo Estoy Aprendiendo De Lo Que Veo Y Leyendo No Tengo Muy Buena Comprension Lectora.
Disculpa Las Molestias Y Gracias.
Atte Snake

Delphius
25-01-2011, 21:24:16
Yo diría que a llSnakell le hace falta sentarse a leer más. Ya se le dijo donde puede conseguir material teórico y práctico. Por otro lado, ahora creo necesario mencionarle de que un error tan simple como confundir DIV y / se soluciona con un simple F1.

Puede que la propia ayuda que viene con Delphi esté en inglés pero no por ello hay que pasarla de lado.

Y ahora que lo pienso... creo que será más fructífero indicarle que lea el libro de Pascal escrito por el talentoso Luis Joyanes Aguilar, para tener una mejor comprensión desde las bases de la sintaxis de Pascal/Object Pascal (tema que obvia otros libros, como ser La Cara Oculta).

En lo que si hay que llamar la atención es la escritura. Antes no escribía con ese estilo "CamelCase"... ¿porqué ahora? ¡MiReNmE... qUe CoOl eScRiBo! :mad:

Saludos,

Casimiro Notevi
25-01-2011, 21:26:59
Hola Pero para que Se Utiliza Las Variables Nombradas Como : double,float,corrency numeric ?
Disculpa POr mi Ignorancia Solo Estoy Aprendiendo De Lo Que Veo Y Leyendo No Tengo Muy Buena Comprension Lectora.
Disculpa Las Molestias Y Gracias.
Atte Snake

[..]
En lo que si hay que llamar la atención es la escritura. Antes no escribía con ese estilo "CamelCase"... ¿porqué ahora? ¡MiReNmE... qUe CoOl eScRiBo! :mad:
Saludos,

Por favor, nuevamente, llSnakell, lee nuestra guía de estilo (http://www.clubdelphi.com/foros/guiaestilo.php), ahí también leerás que no se debe escribir en mayúsculas, que es el motivo por el que tu texto ha quedado en "CamelCase", que tampoco sabrás lo que es porque seguro que tampoco has leído nada de lo que te estamos aconsejando.

ecfisa
25-01-2011, 21:31:31
Gracias por la aclaración Delphius, el otro día ví un post de cuatro o cinco renglones escrito de ese modo y lo primero que pensé
es que la tecla shift sufría de un severo ataque de hipo... :)

Ahora por vos, me entero del nombre, que es un estilo y hasta tiene un lugar en Wikipedia (http://es.wikipedia.org/wiki/CamelCase)...

Como diría Caral: que viejo estoy ...

Un saludo.

Caral
25-01-2011, 21:33:33
Hola
Veamos:
llSnakell tiene 19 años, es muy joven.
Parece que tiene algun problema de comprensión de lectura, podria ser Dixlecsia.
Creo que tiene interes en aprender.
No seamos tan duros, demosle la oportunidad.
No se, digo.
Saludos

Delphius
25-01-2011, 21:34:57
Si que quiere saber que es, para que sirve o como se utiliza el tipo double y el resto de los tipos de datos de punto flotante, basta con escribir por ejemplo double en cualquier parte del código. Seleccionar la palabra, presionar F1 y leer la ayuda.

Saludos,

Casimiro Notevi
25-01-2011, 21:39:39
Si me parece perfecto que quiera aprender, faltaría más, pero que siga las normas básicas del club: poner títulos descriptivos, explicar las cosas claramente, no escribir todo en mayúsculas, poner el código entre etiquetas, nada de cracks, etc. en fin, no es tan difícil. Además de que ya se le ha explicado, no una, sino varias veces. Vamos, lo que pone en nuestra guía de estilo (http://www.clubdelphi.com/foros/guiaestilo.php).

Delphius
25-01-2011, 21:47:44
Hola
Veamos:
llSnakell tiene 19 años, es muy joven.
Parece que tiene algun problema de comprensión de lectura, podria ser Dixlecsia.
Creo que tiene interes en aprender.
No seamos tan duros, demosle la oportunidad.
No se, digo.
Saludos
Efectivamente, el dijo que tiene problemas de comprensión lectora. Si es Dislexia es un asunto delicado ya que desconocemos el alcance de su trastorno y deberíamos pedirle disculpas. Pero el asunto aquí es que en hilos anteriores no ha estado escribiendo con el estilo "CamelCase" y ahora si.

Si fuera Dislexia su estilo CamelCase no sería tran prolijo :rolleyes: ... la Dislexia es la dificultad de entender e interpetar lo que uno lee (como por ejemplo, leer cuñado cuando está escrito cuando) y no una dificultad de escritura (que se conoce como disgrafía, por ej: escribir Manana cuando se quiso escribir mañana; o uno muy similar: cunado/cuando).

Saludos,

llSnakell
25-01-2011, 21:51:39
Disculpenme por no leer la guia de estilo .
puesto que estuve en otro foro y no habian muchas reglas como estas (foro de juego)
entonces pide mis diculpas pense que las reglas era similares.
Por otra parte llevo alrededor de 5 dias nomas aprendiendo esto sin que nadie me diga hace esto o esto otro solo quiero aprender desde lo mas basico.
Como dije anteriormente no comprendo mucho leyendo es por eso que soy muy bueno en matematicas ya que solo es practica , pero leyendo , nose que sera pero no entiendo mucho como por ejemplos !!
Gracias Caral por entenderme :)
(leere la guia de estilo y la lei la mayoria de la cara oculta de delphi pero aparecen demasiados terminos desconocidos es por eso que deje de leerla)
Gracias.

ecfisa
25-01-2011, 21:58:01
Hola de nuevo llSnakell.

Los distintos tipos de variables se utilizan para almacenar distintos tipos de datos.

Los que consultás más arriba, se usan para almacenar números reales y se diferencian por su menor o mayor capacidad
de almacenamiento. (Admiten numeros más chicos o más grandes)

Te los enumero de menor a mayor capacidad:
Single
Real
Double
Extended
Para las aplicaciones normales el tipo Double es suficiente, el Extended es más usado para cálculos científicos.

El tipo Currency es normalmente adecuado para manejar cifras monetarias; gran capacidad de cifras enteras y cuatro decimales.

Es una explicación muy vaga pero podés ampliarla con la ayuda de Delphi.

Un saludo.

Casimiro Notevi
25-01-2011, 21:58:21
[..] (leere la guia de estilo
Bueno, eso se lee en 2 minutos, no más ;)


y la lei la mayoria de la cara oculta de delphi pero aparecen demasiados terminos desconocidos es por eso que deje de leerla)
Gracias.

Programar no es aprender unas normas básicas y listo, puedes estar diez años estudiando y trabajando y sentirte un completo novato, como nos pasa a casi todos.

llSnakell
25-01-2011, 22:04:39
Programar no es aprender unas normas básicas y listo, puedes estar diez años estudiando y trabajando y sentirte un completo novato, como nos pasa a casi todos.


Es por eso que si busco los significados por internet quedo igual sin entender
es por eso que prefiero preguntar aqui , en donde me pueden dar ejemplos y explicar de mejor manera.
Yo aprendo rapido siempre y cuando practique mucho, de las 24 horas del dia podria decir que 10 paso metido en delphi porque realmente me gusta mucho.
Y quiero aprenderlo todo , tengo buena memoria pero solo falta entender los termino :)

Y gracias por todo y todos, espero que puedan seguir ayudandome a aprender todo lo que sea necesario y aun mas :D
Muchas gracias ;)

Delphius
25-01-2011, 22:17:42
Para las aplicaciones normales el tipo Double es suficiente, el Extended es más usado para cálculos científicos.

Pues si, el Double es más que suficiente para los simples mortales, y hasta diría que algunos cálculos científicos. ;)

Lo que sería bueno mencionar es que en lo posible hay que evitar el tipo Extended. No está del todo "soportado", es menos portable y requiere de más tiempo para leer y escribir en estos tipos.
El mayor peligro del tipo Extended es que es un tipo con rango abierto. El estándar IEEE si bien indica los valores límites. Cada plataforma (si es que lo soporta) es libre de tomar el rango dentro de los límites establecidos que desee y lo mismo puede, y sucede, en algunos compiladores.

Lo más raro del asunto es que internamente, las máquinas que usamos hoy en día tienen una arquitectura basada en extended (lo podemos comprobar incluso con Delphi y revisar las funciones matemáticas más basicas... reciben como parámetro o regresan un valor de tipo extended).
De este modo, aún utilizando el tipo Double o Single, la FPU utiliza registros extended para hacer los cálculos. Esto supuestamente garantiza que los cálculos internamente se hagan con la mejor precisión posible y aceptan cierto márgen de error al devolver el dato al tipo con el que estamos trabajando (es decir, si trabajamos con Double se consigue esto: Double -> Extended -> Double). Como es de esperar, existe un mayor discrepancia en el tipo Single.

Al menos eso es lo que tengo entendido. Se puede forzar a la FPU trabajar con la precisión que queramos en las operaciones intermedias... se que había una palabra de control para eso pero no la recuerdo ahorita :p

Saludos,