Not Reading All Lines While Comparing User Entered Name To The One That Exists In File?
Jan 21, 2014
Logic her eis when user selects option1, it asks for user to enter name and as soon as user enters name, it should compar name to existing names in txt file. I have user while loop and for loop but for some reason, it doesnt compare properly as there seems to be some mistake in looping and it just read first line or you can say single line rather than comparing it with all lines in txt file. i have attached votes.txt file with this. Also, if user doesnt exists infile, it will ask user to enter vote as yes or no and add it to file and then count total number of Yes and No votes from file and compare them.
my votes.txt file looks as below with two columns namely (name and vote).
Hiren No
samir yes
bob no
rikul no
master yes
patrick no
summer yes
bhanja no
The project is a program that allows the user to enter students and enter grades for each student. One of the requirements is that if there is already a grade stored for the student that it will display the previous grade. IF the user then enters a new grade the new grade will be stored. IF the user simply presses enter (enters an empty string) nothing is done. I have everything working except for the requirement of doing nothing if the user enters an empty string. If I just press enter at this point I get a NumberFormatException.
The below code is a method "setTestGrades" from the student class. This method iterates through each student object stored in an array list and then checks if there is a previous grade (Requirement# unset grades have to default to -1) before allowing the user to set a new grade.
public void setTestGrades(int testNumber) { //Sets the grade for the specified test number for each student in the arraylist. testNumber -= 1; Scanner input = new Scanner(System.in); for (int i = 0; i < studentList.size(); i++) { System.out.println("Please enter the grade for Test #" + (testNumber + 1) + " For Student " + studentList.get(i).getStudentName());
Me and my mate are struggling to get our code to split a line in a text file which are separated by (":") and store into an array. We've managed to split each individual line into an array, but cannot work out how to do it with multiple splits over one line.
I am trying to read Point objects from square.drw file which contains endpoints of line segments, and draw lines making a square on panel when I run the program. This is what I have got so far. How to get the points using array for drawing ?
I am trying to read Point objects from .drw file which contains endpoints of line segments, and draw lines making a square on panel when I run the program. This is what I have got so far. how to get the points using array for drawing ?
// inside the method to read points objects from .drw file try { fos = new FileInputStream("square.drw"); oos = new ObjectInputStream(fos); // creating an object of Point class endPoints = new Point[sampleSize];
I'm currently working on a java project simply to learn java. So far, it creates a window and makes a properties file, or appends data to it if it already exists. The problem is that I'm not quite sure how to check if the file already exists to append data to it. I'm currently using a boolean (configCreated) that appends data when true, and creates a file when false. The problem is that this boolean is always false since it's at the beginning.
I am advised to use a while loop the Scanner method hasNextLine() and in the while loop body, call the Scanner method nextLine(), and add the returned String to the ArrayList of Strings. what I have gotten so far:
Scanner input = new Scanner(new File("")); while(input.hasNextLine()) { String line = input.nextLine(); System.out.println(line);
Basically I need to make a program prompts the user for an integer, check to make sure the length entered by the user is a power of 2 and at least 2. Then I need to convert from base e to base 2 then I need to print the tick marks of a ruler based of the value of the length.
I got the whole converting thing working and the check for a power of 2, that wasn't an issue because it didn't require any recursion. I just don't know how to print out the proper tick mark values.
The way it is supposed to work is that it needs to look like this. Say the user enters 8;
012131210 012345678
Or if the user enters 16;
01213121412131210 01234567890123456
The bottom row is pretty much just the index value, that I print fine.
The top row though is supposed to be the length of the ticks on a ruler, with the middle most value being the value of the conversion from base e to base 2 from above. I can get that printed and what I get just looks like this.
For 8;
000030000 012345678
For 16;
00000000400000000 01234567890123456
As you can see I can get the middle value and the index values below but I don't know how to use recursion to get the right numbers.
Here's my current code.
import java.util.*; public class TickMarks { public static void main (String args[]){ Scanner input = new Scanner(System.in); boolean looping = true; while(looping == true){ System.out.print("Please enter a length: ");
[Code]...
Now the methods isPowerOfTwo() and printLength() both work fine. However, I'm not sure how to get the left and right side working.
My thoughts were to split the length in half and get a left and right side. I gave both of them arrays so I can keep track of the values. Now as you've seen above I get all zeros and I know it's because that's the default value in an array, I just don't know how to get the proper values.
I am kind of new to programming in java and I am trying to run a first time setup type of thing for my program so I am saving the settings to a file. If the file doesn't exist I want it to run the first time setup but if the file does exist I want it to skip that process. My problem is that .exists() says reads true whether the file is there or is not there.
public static void main(String[] args)throws IOException{ new Window(); //Runs the Window() PrintWriter writer = new PrintWriter(path); boolean bool = new File("path.txt").exists(); System.out.println(bool); if(!new File("path.txt").exists()){
a. Assume that we have a list of employees' names of a company and their ages. Write a program that reads from the user several lines of input. Each line includes an employee's name and his/her age (as an integer). The program should calculate and print the following:
- The average age of all employees (rounded to 2 decimal places). - The oldest employee and his/her age.
Hints:
You could assume that the user will insert valid data and at least one employee. You could assume that the oldest employee is only one person. User could stop the program via entering the word "end" as an employee's name.
Sample Input and Output: In each line, insert an employee's name and his/her age To halt the program, insert "end" as an employee's name
Adam 30 Tom 41 Ted 45 Karl 30 end
The average age of all employees is 36.50.The oldest employee is Hisham whose age is 45
Before continuing a task, any more accurate way to identify hashes? Currently, I am using regex + length of hash to give the user possible hashes.
Identifier class:
package votek; * Purpose: Class is used to run checks on possible hashes that the user has entered. */ public class Identifier {
//Hash entered by user is stored here private String hash; //String that will contain all possible hashes to share with user private String results = "Possible Hashes: "; //Method that runs the other hash methods checks and prints out the results.
I have been stuck on this for the past 2 hours, basically we have to compare user input, put user input into an array and compare for equivalency. An example of the program:
Array 1 & 2 are equal Array 1 & 3 are not equal Array 1 & 4 are not equal.
This cannot be done by importing Java.util.Array at all!! (my research only find this to compare arrays ) which is why I am having trouble starting off. My code thus far:
import java.util.Scanner; public class Lab07b { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("Enter Integer 1:"); int a = input.nextInt();
I am trying to do is get a user to input their name into the system. Once the user has inputted the name into the system, the system should check to see if the name entered matches "alice". If this is true then the system should print "welcome to the system alice". If it is not alice it should not do anything.
Here is the code I have so far... The fault/ error seems to be with the sInput string in the IF statement.
import java.io.*; public class Hellohuman { public static void main (String[] args) { try { InputStreamReader isr = new InputStreamReader(System.in);
I have a GUI with a textArea for the user to input numbers, a button which should "listen" for those numbers, and then a textField to display the sum. I have my code working for user input of one number; but I'm at a loss as to what sort of loop I need to create to get it to read each line of input. I wasn't sure whether to put this in the beginner forum or here, because I am definitely a beginner.
My program seems to work ok when i enter number in order like 1,2,3 = true , and all the numbers for false seem to be working as well! my problem is when i enter number like 3,2,4 that are not in order but still are consecutive!! I thought that another if statement would be the solution but i have tray several different ones and still can't make it work !!!
Java Code:
import java.util.*; public class Consecutive{ public static void main (String [] args){ Scanner console= new Scanner(System.in); System.out.println("Enter three numbers"); String numbers = console.nextLine();
Ask user to enter a name alphabet by alphabet, and print d whole word as output,,,,,, use while loop?Since i am new to JAVA..i have no clue on how to begin?
I'm trying to implement a playlist class that creates a playlist from songs that the user has entered. Basically, it'll have the following requirements:
There can be a maximum of 2 playlists. Each playlist holds a maximum of 3 songs. Can't be over 12 mins. Can't be over 10 MB. Can't use arrays (a real pain).
I'm really struggling with how to even go about this. I'll post majority of my code below, I know a lot of it can be condensed/improved but I'm just trying to focus on functionality at the moment.
Interface class:
public class Interface { Scanner console = new Scanner(System.in); private SongDatabase database = new SongDatabase(); private Playlist playlist = new Playlist(); private int songCount=0;
[Code] .....
In short, the aspects that are relevant to the playlist functionality are the addSongtoPlaylist() method in Interface class, the getSong() method in SongDatabase class and the Playlist class.
/** * Auto Generated Java Class. */ import java.util.*; public class Hangman { public static void main(String[] args) { Scanner input = new Scanner (System.in); int guess; boolean revealed[] = {false, false, false, false, false}; String word [] = {"c", "a", "n", "a", "d", "a"};
[Code] ....
I am not sure how to make the program check if the letter entered by the user matches the one in the array. also i am not sure how to make the program run again with a new word.
I have the code below that just keeps getting the user's name and displaying it until the user enter's an empty string. Well, to simulate that, I just hit the keyboard instead of entering any name but for some reasons I am not seeing in my code, the programme just keeps looping.
System.out.println("Enter your name : "); Scanner st = new Scanner(System.in); while(st.hasNext()){ System.out.println("Enter your name : "); String name = st.nextLine(); System.out.println(name); if(name==" ") break; } System.out.println("you are out of the while loop now!!");
I have returned with yet another problem but I think this one might be a bit easier to fix.
So the whole MO of this program is to take user input, and display the sum of the digits of the number they entered. I am supposed to do this by utilizing methods. So far this is what I have and when I compile it tells me that it "cannot find symbol", which I don't understand as I define what "m" is in the for loop. The other error is that it says:
"Exercise6_2.java:22: error: incompatible types: possible lossy conversion from long to int return result; ^
I don't understand why it's giving me this error nor do I understand why result seems to inherently be an int. (Also the public static int sumDigits(long n) method was given to me by the book so that is what I am supposed to use).
import java.util.Scanner; public class Exercise6_2 { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("Enter a integer"); long n = input.nextLong();
I need to write a Java program to perform a mathematical calculation between two numbers entered by the user. User has to choose the mathematical operation and input it and then when the user enters 2 numbers, he gets the answer. When user enters any other character other than *, /, + and - he should be able to exit. Perform calculation between numbers should be until user decided to exit from the program. My code is below, calculation part goes well, but can't get it exit when user enter any other character.. How to fix it?
import java.io.*; public class q11 { public static void main(String[]args)throws IOException { InputStreamReader ISR=new InputStreamReader(System.in); BufferedReader BR=new BufferedReader(ISR); while(true){ System.out.println("Enter.."); System.out.println("* : For multiplication");