A small programming challenge.

Trent Tobler ttobler at unislc.uucp
Tue May 21 05:53:47 AEST 1991


>From article <1499 at loki.une.oz.au>, by kevin at loki.une.oz.au (Kevin Pollard):
> I have written some code to accept command line parameters and apply
> meaningful parameters - but I feel it is an interesting problem which
> must have some neat solutions.
> 
> The task is:
> 	allow up to 4 parameters to be entered on the command line
> 	(that is, progname [ p1 [ p2 [ p3 [ p4 ] ] ] ] if you know what I mean) 
> 	The program is to accept the parameters. If the a parameter
> 	is missing then it is to default to the parameter is to 
> 	default to the one before it.
> 	(that is, if  progname x y z   is entered, then the 4th parameter
> 	 is to default to z)
> 	and so on down to the first parameter which is to have a hard
> 	coded default. If no parameters were entered then all parmeters
> 	would end up defaulting to this hard coded default.
> 
> 
> 
> Does anyone out there know of some neat ways of doing this.
> 
> This is really an algorithm problem, but since there is no algorithm
> newsgroup, and I program in C on an IBM-type machine, this would be
> a relevant newsgroup.

Are you sure this is not a homework assignment?  It looks so simple that
I hesitate to give the answer.  Perhaps the algorithem is what you want.  If
so here it is:

  assign default to hard_default.
  assign n to 0 (or 1 if that is the array base)
  repeat 4 times :
     if there is an argument then assign p[n] to it.
       otherwise, assign default to p[n].
     assign default to p[n]
     increment n

--

  Trent Tobler



More information about the Comp.std.c mailing list