Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #101993

Re: Program to check for valid names

From Richard Heathfield <rjh@cpax.org.uk>
Newsgroups comp.lang.c
Subject Re: Program to check for valid names
Date 2017-01-16 17:37 +0000
Organization Fix this later
Message-ID <o5j092$bjs$1@dont-email.me> (permalink)
References (7 earlier) <d4e7ab85-bc71-462f-92a2-f603108cfac4@googlegroups.com> <o5ifr1$e6f$1@dont-email.me> <52e7636c-ebf6-4eea-b50e-f2747914c6ed@googlegroups.com> <878tqbht32.fsf@bsb.me.uk> <e7e1b00e-9d0e-4821-a4a6-9279b01577ce@googlegroups.com>

Show all headers | View raw


On 16/01/17 17:33, Alla _ wrote:
> On Monday, January 16, 2017 at 7:23:37 PM UTC+3, Ben Bacarisse wrote:
>> Alla _ <modelling.data@gmail.com> writes:
>>
> <snip>
>>> bool valid_names(const char *line)
>>> {
>>>     char *names [] = { "Years", "Sales", "Cost of Goods Sold", "COGS",
>>>         "Gross Profit", "\"Selling, General, and Admin Exp\"", "SG&A",
>>>         "Operating Income before Depr", "Operating Income before Depreciation",
>>>         "Depreciation and Amortization", "Operating Profit", "Interest Expense",
>>>         "Other Gains and Losses", "Pretax Income", "Income Tax Expense", "Net Income",
>>>         NULL};
>>>
>>>     size_t i = 0;
>>>     while(names[i])
>>>     {
>>>         if(!strncmp(names[i], line, strlen(names[i])))
>>>         {
>>>             printf("Names[%zu] = %zu\n", i, strlen(names[i]));
>>>             return true;
>>>         }
>>>         i++;
>>>     }
>>>     return false;
>>> }
>>
>> According to your specification you don't need to search this list.
>> Your original plan was that the names must occur in order:
>>
>> |  (1) check if row names completely correspond to the required ones,
>> |  no more or less of those - for this I assume I need an array
>> |  of required row names, and when reading each line from the
>> |  file, make sure that line 1 row name equals the first name in
>> |  the array, etc.
> <snip>
> I have "corrected" it, but it looks horrible for now, and doesn't work.
> I won't post questions yet, hope to find my mistakes.
>
> The only question: do you think the following approach (please, without yet
> revealing the solution) sounds correct: I pass a line and a line number to
> valid_names function, and check if the name in the array at the
> index = line number is the same as the name in the line?
> The only caveat here is that for at least two lines I have two options
> of valid names.

If you know for sure what the data must be, why do you need to read it 
in from the file in the first place? Why not just hold it in an array in 
your program instead? After all, you're going to do that anyway in order 
to check it.

What you are telling the user is "guess what you have to type, and I'll 
tell you if you guess wrong". What's the point?

-- 
Richard Heathfield
Email: rjh at cpax dot org dot uk
"Usenet is a strange place" - dmr 29 July 1999
Sig line 4 vacant - apply within

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-14 04:35 -0800
  Re: Program to check for valid names Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-01-14 15:02 +0000
    Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-14 07:29 -0800
      Re: Program to check for valid names supercat@casperkitty.com - 2017-01-14 10:17 -0800
      Re: Program to check for valid names Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-01-14 18:29 +0000
        Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 02:16 -0800
          Re: Program to check for valid names Richard Heathfield <rjh@cpax.org.uk> - 2017-01-16 11:40 +0000
            Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 03:50 -0800
              Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 04:21 -0800
                Re: Program to check for valid names Richard Heathfield <rjh@cpax.org.uk> - 2017-01-16 12:56 +0000
                Re: Program to check for valid names Richard Heathfield <rjh@cpax.org.uk> - 2017-01-16 12:59 +0000
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 05:03 -0800
                Re: Program to check for valid names Richard Heathfield <rjh@cpax.org.uk> - 2017-01-16 13:06 +0000
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 06:40 -0800
                Re: Program to check for valid names Richard Heathfield <rjh@cpax.org.uk> - 2017-01-16 15:03 +0000
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 08:29 -0800
                Re: Program to check for valid names Richard Heathfield <rjh@cpax.org.uk> - 2017-01-16 16:42 +0000
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 09:03 -0800
                Re: Program to check for valid names Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-01-16 17:17 +0000
                Re: Program to check for valid names Richard Heathfield <rjh@cpax.org.uk> - 2017-01-16 17:20 +0000
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 09:26 -0800
                Re: Program to check for valid names Richard Heathfield <rjh@cpax.org.uk> - 2017-01-16 17:18 +0000
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 09:23 -0800
                Re: Program to check for valid names Richard Heathfield <rjh@cpax.org.uk> - 2017-01-16 17:30 +0000
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 06:42 -0800
                Re: Program to check for valid names Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-01-16 16:23 +0000
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 08:46 -0800
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 09:33 -0800
                Re: Program to check for valid names Richard Heathfield <rjh@cpax.org.uk> - 2017-01-16 17:37 +0000
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 09:54 -0800
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-17 03:44 -0800
                Re: Program to check for valid names Barry Schwarz <schwarzb@dqel.com> - 2017-01-17 08:16 -0800
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-18 10:21 -0800
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-18 10:32 -0800
                Re: Program to check for valid names Richard Heathfield <rjh@cpax.org.uk> - 2017-01-18 19:38 +0000
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-18 12:52 -0800
                Re: Program to check for valid names Barry Schwarz <schwarzb@dqel.com> - 2017-01-18 18:52 -0800
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-20 02:00 -0800
                Re: Program to check for valid names Barry Schwarz <schwarzb@dqel.com> - 2017-01-20 12:09 -0800
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-20 02:45 -0800
                Re: Program to check for valid names Barry Schwarz <schwarzb@dqel.com> - 2017-01-20 12:24 -0800
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-21 09:02 -0800
                Re: Program to check for valid names Barry Schwarz <schwarzb@dqel.com> - 2017-01-18 18:05 -0800
                Re: Program to check for valid names Barry Schwarz <schwarzb@dqel.com> - 2017-01-16 10:23 -0800
                Re: Program to check for valid names Alla _ <modelling.data@gmail.com> - 2017-01-16 23:03 -0800
                Re: Program to check for valid names Barry Schwarz <schwarzb@dqel.com> - 2017-01-17 00:19 -0800
  Re: Program to check for valid names Barry Schwarz <schwarzb@dqel.com> - 2017-01-14 18:23 -0800

csiph-web