}
}
-int cargar_datos(int argc, const char** argv, Real* paso, Real* tf, Real* f0) {
+int cargar_datos(int argc, const char** argv, Real* paso, Real* t0, Real* tf,
+ Real* f0) {
switch (argc) {
/* Si no tiene parámetros usa los valores por omisión. */
case 1:
fprintf(stderr, "Error: Demasiados parámetros.\n");
return FALSE;
}
- /* TODO Verificar que el paso no sea cero y que tf > ti. */
+ /* El paso debe ser mayor que cero. */
+ if (*paso <= 0.0) {
+ fprintf(stderr, "Error: El paso (%f) debe ser mayor que cero.", *paso);
+ return FALSE;
+ }
+ /* El tiempo final debe ser mayor que el inicial. */
+ if (*t0 >= *tf) {
+ fprintf(stderr, "Error: El tiempo final (%f) no es mayor que ", *tf);
+ fprintf(stderr, "el tiempo inicial (%f).", *t0);
+ return FALSE;
+ }
return TRUE;
}