Пятница, 2025-02-07, 23:47:04
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Функции ввода\вывода, генерация случайных чисел
CHerryДата: Пятница, 2011-09-16, 23:56:05 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 141
Репутация: 3732
Статус: Offline
генерируется число от 0 до 10
получить запрос на число
после выдается ответ угадал или нет
- после первой игры может выбрать вторую, да/нет
- статистика процент отгадываний
+bonus - корни квадратного уравнения (учесть защиту от некорректного ввода)
 
CHerryДата: Суббота, 2011-09-17, 00:00:40 | Сообщение # 2
Генералиссимус
Группа: Администраторы
Сообщений: 141
Репутация: 3732
Статус: Offline
Code

import java.util.Scanner;
public class guess {
   public static void main(String[] args) {
    // TODO Auto-generated method stub
    int attempt=0; // счетчик попыток
    int guess=0;   // счетчик угадываний
    int number=1,rnd;
    while (number!=0){
     attempt++;
     number=getNumberFromKeyboard();
     rnd=getRandomNumber();
     if (number==rnd) {    //угадал
      guess++;
      System.out.println("Вы угадали !");
      System.out.println("Вы угадали:"+guess+" из "+attempt+" !");
     }
     else{    //неугадал
      System.out.println("Не угадали ! Я загадал-"+rnd);
      System.out.println("Вы угадали:"+guess+" из "+attempt+" !");
     }
    }
   }
   public static int getNumberFromKeyboard() { // получение с клавиатуры потокa
    System.out.println("Введите число(от 1 до 9, выход- 0):");    
    Scanner input=new Scanner(System.in);
    return input.nextInt();
   }
   public static int getRandomNumber() { //получение случайного числа от 1 до 10
          return (int)(Math.random()*9+1);
   }
}
 
MagorДата: Суббота, 2011-09-17, 02:46:25 | Сообщение # 3
Рядовой
Группа: Проверенные
Сообщений: 1
Репутация: 0
Статус: Offline
import java.util.Random;

public class DZ4 {
public static void main(String agrs[]) {
int a;
Random rand = new Random();
a = rand.nextInt(10) + 1;
System.out.println(a);
}
}

Только я просто сделал, чтобы при запуске генерировало любое число и больше ничего)
то есть оно недоделано!не особо понимаю ваши методы, трудно все сразу знать!
поэтому нужна ваша помощь. facepalm
 
CHerryДата: Суббота, 2011-09-17, 14:02:08 | Сообщение # 4
Генералиссимус
Группа: Администраторы
Сообщений: 141
Репутация: 3732
Статус: Offline
Quote (Magor)
не особо понимаю ваши методы, трудно все сразу знать!


Можешь пока не заморачиваться, думаю дальше проходить будем.
Попробуй пока писать без методов и функций.
В любом случае посмотреть видео ссылка раздел- Объекты и классы. Там доступно рассказано как использовать классы.
еще у Шилда вроде понятно, но дольше читать чем на видео.
Это то видео, что я вчера на флешке принес.
Распаковываешь и запускаешь index-89.htm - это содержание.
 
CHerryДата: Суббота, 2011-09-17, 14:08:21 | Сообщение # 5
Генералиссимус
Группа: Администраторы
Сообщений: 141
Репутация: 3732
Статус: Offline
Quote (Magor)
Только я просто сделал, чтобы при запуске генерировало любое число и больше ничего)

Еще попробуй добавь
Code
Scanner input=new Scanner(System.in);

этим ты считаешь строку с клавиатуры в переменную input
и используя оператор сравнения сравни со своим случайным числом.
дальше заверни в цикл например десять попыток
 
CHerryДата: Воскресенье, 2011-09-18, 02:56:37 | Сообщение # 6
Генералиссимус
Группа: Администраторы
Сообщений: 141
Репутация: 3732
Статус: Offline
Замечания устранены
Code

import java.io.BufferedReader;
import java.io.InputStreamReader;
public class guess {
  static int guess=0;   // счетчик угадываний
  static int attempt=0; // счетчик попыток
   
  public static void main(String[] args) {
   int number=1,rnd;
   while (number!=0){
    number=getNumberFromKeyboard();
    rnd=getRandomNumber();
    printAttempt(number,rnd);
   }
  }
  public static int getNumberFromKeyboard() {//Возвращает от клавиатуры число от 0 до 9
   System.out.println("Введите число(от 1 до 9, выход- 0):");   
   int result = -1;
   do{
    BufferedReader BufferedBlock = new BufferedReader(new InputStreamReader (System.in));
    String key;
    try {
     key = BufferedBlock.readLine().substring(0, 1);
     result = Integer.parseInt(key);
     attempt++;
    } catch (Exception e ) {
     System.out.println("Ошибка ввода:"+e);
     System.out.println("Введите число от 1 до 9, выход-0");
    }
   } while (result==-1);
    
   return result;
  }
  public static int getRandomNumber() { //получение случайного числа от 1 до 10
         return (int)(Math.random()*9+1);
     }
  public static void printAttempt(int number, int rnd) {//печать статистки угадываний
   if (number==rnd) {    //угадал
    guess++;
    System.out.println("Вы угадали !");
    System.out.println("Вы угадали:"+guess+" из "+attempt+" !");
   }
   else{    //неугадал
    System.out.println("Не угадали ! Я загадал-"+rnd);
    System.out.println("Вы угадали:"+guess+" из "+attempt+" !");
   }
  }
}
 
  • Страница 1 из 1
  • 1
Поиск: