2004-07-23 12:13:29 +05:30
|
|
|
/* vi: set sw=4 ts=4: */
|
2004-01-27 14:52:20 +05:30
|
|
|
/*
|
2004-07-23 12:13:29 +05:30
|
|
|
* seq implementation for busybox
|
|
|
|
*
|
2006-02-24 01:24:48 +05:30
|
|
|
* Copyright (C) 2004, Glenn McGrath
|
2004-01-27 14:52:20 +05:30
|
|
|
*
|
2006-02-24 01:24:48 +05:30
|
|
|
* Licensed under the GPL v2, see the file LICENSE in this tarball.
|
2004-01-27 14:52:20 +05:30
|
|
|
*/
|
|
|
|
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include "busybox.h"
|
|
|
|
|
2006-03-07 02:17:33 +05:30
|
|
|
int seq_main(int argc, char **argv)
|
2004-01-27 14:52:20 +05:30
|
|
|
{
|
2006-02-24 01:24:48 +05:30
|
|
|
double last, first, increment, i;
|
|
|
|
|
|
|
|
first = increment = 1;
|
|
|
|
switch (argc) {
|
|
|
|
case 4:
|
|
|
|
increment=atof(argv[2]);
|
|
|
|
case 3:
|
|
|
|
first=atof(argv[1]);
|
|
|
|
case 2:
|
|
|
|
last=atof(argv[argc -1]);
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
bb_show_usage();
|
2004-01-27 14:52:20 +05:30
|
|
|
}
|
|
|
|
|
2004-07-23 12:13:29 +05:30
|
|
|
/* You should note that this is pos-5.0.91 semantics, -- FK. */
|
2006-03-22 22:41:44 +05:30
|
|
|
if (first <= last ? increment > 0 : increment < 0) {
|
2006-02-24 01:24:48 +05:30
|
|
|
for (i = first;
|
2006-03-22 22:41:44 +05:30
|
|
|
(first <= last) ? (i <= last) : (i >= last);
|
2006-02-24 01:24:48 +05:30
|
|
|
i += increment)
|
|
|
|
{
|
|
|
|
printf("%g\n", i);
|
|
|
|
}
|
2004-01-27 14:52:20 +05:30
|
|
|
}
|
|
|
|
|
2004-07-23 12:13:29 +05:30
|
|
|
return EXIT_SUCCESS;
|
2004-01-27 14:52:20 +05:30
|
|
|
}
|