Read text, handle white space

 
Thread Tools Search this Thread
Homework and Emergencies Homework & Coursework Questions Read text, handle white space
# 1  
Old 03-10-2011
Java Read text, handle white space

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted!

1. The problem statement, all variables and given/known data:
The problem would be to make the program tolerate the white space and still read the string of characters. the objective would be to read roman numerals. the function can read the roman numerals but the white space read it as a zero and trash the whole thing. I have very little understanding of the usage of "flush" as well.


2. Relevant commands, code, scripts, algorithms:
Code:
#define   IS_WHITE_SPACE(c)   ((c) == ' ' || (c) == '\t' || (c) == '\n')

3. The attempts at a solution (include all code and scripts):
Code:
#include <stdio.h>
#include "roman.h"
#include "romanutil.h"
#include "chrutil.h"

int get_roman(void)
/*  This function reads the next number in roman numerals from the input
        and returns it as an integer  */
{  char rdigit;
   int  num = 0;
   int  dig_value, last_dig_value = M;
        /*  get the first digit  */
        rdigit = getchar();

        /* if the function reads 0 */

        if (is_roman(rdigit)==0)
        {
        printf("No Such Thing\n" );
                //return 0;
        }


        /*  while it is a roman digit or a white space  */

        while( is_roman(rdigit))
        {
                        /*  convert roman digit to its value  */
                        dig_value = convert_roman(rdigit);
                        /*  if previous digit was a prefix digit  */
                        if(dig_value > last_dig_value)
                                /*  adjust total  */
                                num = num - 2 * last_dig_value + dig_value;
                        /*  otherwise accumulate the total  */
                        else num = num + dig_value;
                        /*  save this digit as previous  */
                        last_dig_value = dig_value;


                /*  get next digit  */
                rdigit = getchar();
        }

        /*  return EOF if detected  */
        if(rdigit == EOF) return EOF;


                 /* if there is a white space*/
                if(IS_WHITE_SPACE(rdigit))
                {
                        while(rdigit!='\n')
                        {
                        getchar();
                        return num;
                        }
                }


        /*  return the number  */
        return num;
}


4. Complete Name of School (University), City (State), Country, Name of Professor, and Course Number (Link to Course):
University Of Hawaii at Manoa, Honolulu (HI), Oahu (Hawaii), Tep Dobry, EE160 (I cannot post any link since this is my third post here, but google ee160 or tep dobry on google and it should be in the link 2011 ee 160: I apologize for any inconvenience)

Note: Without school/professor/course information, you will be banned if you post here! You must complete the entire template (not just parts of it).

Last edited by joeyg; 03-10-2011 at 03:01 PM.. Reason: Added a better title for request
# 2  
Old 03-15-2011
I don't understand why you put your if(IS_WHITE_SPACE) at the end.
Also getchar returns the integer represantation fo a char. I always cast them.
So my approch would be:
Code:
int c;

while((c = getchar()) != EOF) {
    if(IS_WHITE_SPACE((char) c))
        continue;
    /* now check for is_roman here and do the processing */
}

This User Gave Thanks to disaster For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Add white space

hi guys how can i add spacein file name with sed if strings have no space around dash input 19-20 ( 18-19 ) ABC-EFG output after add white space 19 - 20 (18 - 19 ) ABC - EFG thx in advance (2 Replies)
Discussion started by: mhs
2 Replies

2. Shell Programming and Scripting

Handle space in directory name

I have two servers in subject, say server1 and server2. I have shell scripts on server1. We have a directory on server2 from where the files need to be scp to server1. The directory on server2 is having space in its name. I have script on server1 that takes the directory path of server2 as a... (4 Replies)
Discussion started by: Longfellow
4 Replies

3. UNIX for Dummies Questions & Answers

filename with white space

our user creates a text file with a white space on the filename. this same file is transfered to unix via automation tool. i have a korn shell script that reads these files on a input directory and connects to oracle database to run the oracle procedures which will load the data from each of the... (2 Replies)
Discussion started by: wtolentino
2 Replies

4. Shell Programming and Scripting

remove white space from specific columns in text file

Hello i have a text file like this: 1 AB AC AD EE 2 WE TR YT WW 3 AS UY RF YT the file is bigger , but that's an example of the data what i want to do is to merge all columns together except the first one, it will become like this : 1 ABACADEE 2 WETRYTWW 3 ASUYRFYT (8 Replies)
Discussion started by: shelladdict
8 Replies

5. Shell Programming and Scripting

sed + white space

Hi, What sed command (if sed is the right command) can remove ALL white space from my file. I have a csv, except I want to remove all white space between commas and characters. My idea (without testing) sed 's/ //g' Is there a better way? (18 Replies)
Discussion started by: mcclunyboy
18 Replies

6. UNIX for Dummies Questions & Answers

SED with White Space

Dear Members, Suppose i have a variable test which stores a string as below: test='John drives+++++++++a+++++car' now i want to use sed on the above variable and replace + with a white space, so that i get echo $test should give me 'john drives a car' Between... (1 Reply)
Discussion started by: sandeep_1105
1 Replies

7. UNIX for Dummies Questions & Answers

Padding With White Space Between Variables

Dear Users, How do we pad with white space of particular length between two variables. For Example: Suppose i define the variables as follows: a='toyota' b='camry' c='honda' d='accord' e=`echo "$a"'\n'"$b"` f=`echo "$c"'\n'"$d"` If i do an echo on variables e and f i get :... (1 Reply)
Discussion started by: sandeep_1105
1 Replies

8. Shell Programming and Scripting

read space filled file and replace text at specific position

Hi I have a spaced filled file having records like below: What I want is to read line having RT3 at position 17-19 then go to position 2651 check the 18 characters (might be space filled till 18 characters). This position should have a... (6 Replies)
Discussion started by: COD
6 Replies

9. Shell Programming and Scripting

stripping white space...

Hi All; Having a problem with a file.. the file contains the following data... (a snapshot) 1331F9E9DB7C2BB80EAEDE3A8F043B94,AL7 1DZ,M,50 186FDF93E1303DBA217279EC3671EA91,NG5 1JU,M,24 3783FFAF602015056A8CD21104B1AAAF,CH42 4NQ,M,17 It has 3 columns sepreated by a , the second column... (7 Replies)
Discussion started by: Zak
7 Replies

10. Shell Programming and Scripting

How to keep white space is being deleted using read

I am using Posix shell to write a script. The problem I am having is that when I use the read command to go through a file I lose the tabs. How can I keep this from happening? (1 Reply)
Discussion started by: keelba
1 Replies
Login or Register to Ask a Question