Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [JAVA] multithreaded Java program 
V
    Опции темы
KatrinIceLand
Дата 12.9.2007, 12:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 166
Регистрация: 16.3.2006

Репутация: нет
Всего: нет



Write a multithreaded Java program that outputs prime numbers. Your program should work as follows. The user will run the program and will enter a number on the command line. The program will then create a separate thread that outputs all the prime numbers less than or equal to the number entered by the user. A skeleton for your solution is below:

Код

class PrimesThread implements Runnable
{
private int num;
private int[] primeNums;
public PrimesThread(int num) {
if (num < 2)
throw new IllegalArgumentException();
this.num = num;
}
//insert your code here //
}
public class Primes
{
// insert your code here //
}




Это сообщение отредактировал(а) Guedda - 12.9.2007, 15:43
--------------------
[... кто изобрел математику? А зачем?...
PM MAIL   Вверх
powerOn
Дата 13.9.2007, 00:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 1
Всего: 159



Take a look at the following solution:

Код

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

class PrimesThread implements Runnable
{
    private int num;
    // we don't need it. 
    // private int[] primeNums;
    
    public PrimesThread(int num)
    {
        if (num < 2)
            throw new IllegalArgumentException();
        this.num = num;
    }
    
    //insert your code here //
    
    public void run()
    {
        for(int i = 2; i <= num; i++)
        {
            boolean prime_flag = true;
            // checking if a number is prime
            // this is not the best solution, but it works
            for(int j = 2; j < i; j++)
            {
                if ((i % j) == 0)
                {
                    prime_flag = false;
                    break;
                }
            }
            
            if (prime_flag)
            {
                System.out.println(i);
            }
        }
    }
}

public class Primes
{
    public static void main(String[] args)
    {
        // Creating a new BufferedReader instence to read data form console
        BufferedReader buffReader = new BufferedReader(new InputStreamReader(System.in));
        try
        {
            // Reading string from console and converting it to digit.
            Integer i = Integer.parseInt(buffReader.readLine());
            // Creating a new thread based on a PrimesThread instance.
            Thread thread = new Thread(new PrimesThread(i));
            // Starting the thread.
            thread.start();
        }
        catch (IOException ex)
        {
            ex.printStackTrace();
        }
    }
}



--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
KatrinIceLand
Дата 13.9.2007, 01:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 166
Регистрация: 16.3.2006

Репутация: нет
Всего: нет



Good evening, powerOn smile

 I need a time to go through it, to understand, and to check if it works and how it works.

Thank you for your code!
--------------------
[... кто изобрел математику? А зачем?...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0417 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.