Member 14780770 Ответов: 2

Мне нужна быстрая помощь в java


Two days, I try to solve this accessory. I can solve it. I hope someone can help me as soon as possible


The problem is I don’t know how to create a file in which the positive numbers are and the other is in the negative


Exercise 2 :

Create a file “input.txt” containing an arbitrary integer values (use Math.random)
Create 2 files “positive.txt” and “negative.txt” containing respectively positive integers and negative integer from input.txt.
 
Exercise 3 :

 

Exercise 2 using binary files.


Что я уже пробовал:

This is the code I made, but the above things remain




import java.io.*;
import java.util.Scanner;

public class  JavaApplication57 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) throws Exception {
        // TODO code application logic here
       Scanner cc = new Scanner(System.in);
       System.out.println("Enter the Name of File 1 = \n");
       String name1 = cc.nextLine();
       System.out.println("Enter the Name of File 2 = \n");
       String name2 = cc.nextLine();
       
       ObjectOutputStream O1 = new  ObjectOutputStream(new FileOutputStream(name2));
       ObjectInputStream  I1 = new  ObjectInputStream(new FileInputStream(name2));
       
       ObjectOutputStream O2 = new  ObjectOutputStream(new FileOutputStream(name1));
       ObjectInputStream  I2 = new  ObjectInputStream(new FileInputStream(name1));
       
       
       int doubleNu;
       for(int i =0; i<100;i++){
           double k=-1;
           double m =(double)i;
             int s=((int)((Math.random()*100)*Math.pow(k, m)));
         
       }
       
       O1.close();
       O2.close();
       
       try
       {
           while((doubleNu=I1.readInt())!=1)
           {
               
                O2.writeInt(doubleNu*2);
           }
       }
        catch(EOFException e){
            
        }
        O2.close();
        I1.close();
        
        
        //ObjectInputStream  I2 = new  ObjectInputStream(new FileInputStream(name1));
        
         try
       {
           while((doubleNu=I1.readInt())!=-1)
           {
               System.out.println(" " + doubleNu);
           }
       }
        catch(EOFException e){
            
        }
        I1.close();
        
        try
       {
           while((doubleNu=I2.readInt())!=-1)
           {
               System.out.println(" " + doubleNu);
           }
       }
        catch(EOFException e){
            
        }
        I2.close();
    }
}

ZurdoDev

Самое важное, что нужно знать разработчику, - это как отлаживать.

2 Ответов

Рейтинг:
0

CPallini

Вы всегда должны внимательно читать требования.
Попробуй

import java.io.*;

public class  JA57
{
  public static void main(String[] args) throws Exception
  {
    final String inputFileName = "input.txt";
    final String posFileName = "positive.txt";
    final String negFileName = "negative.txt";
       
    ObjectOutputStream oosInput;

    oosInput = new  ObjectOutputStream(new FileOutputStream(inputFileName));
    for(int i =0; i < 100; i++)
    {
      int n = (int) Math.round(( 200 * Math.random() - 100));
      oosInput.writeInt(n);
    }
    oosInput.close();

    ObjectOutputStream oosPos, oosNeg;
    ObjectInputStream  oisInput;
    oisInput = new  ObjectInputStream(new FileInputStream(inputFileName));
    oosPos = new  ObjectOutputStream(new FileOutputStream(posFileName));
    oosNeg = new  ObjectOutputStream(new FileOutputStream(negFileName));

    try
    {
      while ( true )
      {
        int n;
        n = oisInput.readInt();
        if ( n > 0 )
          oosPos.writeInt(n);
        else if ( n < 0 )
          oosNeg.writeInt(n);
      }
    }
    catch ( EOFException e ){}

    oisInput.close();
    oosPos.close();
    oosNeg.close();

    showNumbers(inputFileName);
    showNumbers(posFileName);
    showNumbers(negFileName);
  }
  static void showNumbers( final String fileName ) throws FileNotFoundException, IOException
  {
    System.out.println(fileName);
    ObjectInputStream  ois =  new  ObjectInputStream(new FileInputStream(fileName));
    try
    {
      while ( true )
      {
        int n;
        n = ois.readInt();
        System.out.printf("%d ", n);
      }
    }
    catch ( EOFException e ){}
    System.out.println();
    ois.close();
  }
}


Maciej Los

RTUS - готовое к использованию решение ;)
5ed!

CPallini

Упражнение для моей ржавой Явы. Спасибо, Мацей.

Рейтинг:
0

OriginalGriff

Мы более чем готовы помочь тем, кто застрял, но это не значит, что мы здесь, чтобы сделать все это для вас! Мы не можем сделать всю работу, вам либо платят за это, либо это часть ваших оценок, и было бы совсем несправедливо, если бы мы сделали все это за вас.

Мы нуждаемся в вас, чтобы сделать работу, и мы поможем вам, когда вы застряли. Это не значит, что мы дадим вам пошаговое решение, которое вы можете сдать!
Начните с объяснения, где вы находитесь в данный момент и каков следующий шаг в этом процессе. Затем расскажите нам, что вы пытались сделать, чтобы этот следующий шаг сработал, и что произошло, когда вы это сделали.

Так что все будет зависеть от тебя.
К счастью, у вас есть инструмент, который поможет вам выяснить, что происходит: отладчик. Как вы его используете, зависит от вашей системы компилятора, но быстрый поиск в Google имени вашей IDE и "отладчика" должен дать вам необходимую информацию.

Поместите точку останова в первую строку функции и запустите код через отладчик. Затем посмотрите на свой код и на свои данные и определите, что должно произойти вручную. Затем по одному шагу в каждой строке проверяйте, что то, что вы ожидали, произойдет именно так, как и произошло. Когда это не так, тогда у вас есть проблема, и вы можете вернуться назад (или запустить ее снова и посмотреть более внимательно), чтобы выяснить, почему.

Извините, но мы не можем сделать это за вас - пришло время вам освоить новый (и очень, очень полезный) навык: отладку!