Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2014, 06:20   #1
Александр_1с
Пользователь
 
Регистрация: 05.11.2014
Сообщений: 10
По умолчанию Циклы с постусловием

составить программу вывода всех трехзначных чисел, сумма цифр которого равна данному натуральному числу, должны быть операторы do while на java, спс заранее

были попытки неправильно считает
Код:
import javax.swing.*;
public class JavaApplication2 {
public static void main(String[] args) {
   int i=100;
   int X;
   int fst; //сотни
   int scd; //десятки
   int thd; //единицы
   X=Integer.parseInt (JOptionPane.showInputDialog ("Введите размерность"));
   do {
       fst = 1/100;
       scd = (i - fst*100)/10;
       thd = (i - fst*100 - scd*10);
       i++;
       if(fst*scd*thd <= X)
       System.out.println(fst*scd*thd);
   } while (i < 1000);
     
}
}
сразу скажу в программировании не силен может все неправильно

Последний раз редактировалось Александр_1с; 02.12.2014 в 08:07.
Александр_1с вне форума Ответить с цитированием
Старый 02.12.2014, 07:00   #2
Foreseen
Техножрец
Форумчанин
 
Аватар для Foreseen
 
Регистрация: 04.07.2014
Сообщений: 289
По умолчанию

500 р, заранее пожалуйста
— Двери есть везде. Просто нужно знать, как в них войти.
Foreseen вне форума Ответить с цитированием
Старый 02.12.2014, 07:47   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Александр_1с
Я правильно понимаю - наработок и попыток не было и не будет?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.12.2014, 08:02   #4
Александр_1с
Пользователь
 
Регистрация: 05.11.2014
Сообщений: 10
По умолчанию

добавил код, но может быть там все неправильно
Александр_1с вне форума Ответить с цитированием
Старый 02.12.2014, 08:08   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ппц... Язык тоже угадывать нужно было???
Тему перенес.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.12.2014, 09:08   #6
buriat
Форумчанин
 
Регистрация: 28.06.2010
Сообщений: 189
По умолчанию

Код:
	public static void main (String[] args) throws java.lang.Exception
	{
		int requiredSum = Integer.parseInt(args[0]);
		int i = 100;
		int tmp;
		int sum;
		do {
			sum = 0;
			tmp = i;
			while (tmp > 0) {
				sum += tmp % 10;
				tmp = tmp / 10;
			}
			if (sum == requiredSum) {
				System.out.println(i);
			}
		} while (++i < 1000);
	}
buriat вне форума Ответить с цитированием
Старый 02.12.2014, 12:14   #7
Александр_1с
Пользователь
 
Регистрация: 05.11.2014
Сообщений: 10
По умолчанию

Цитата:
Сообщение от buriat Посмотреть сообщение
Код:
	public static void main (String[] args) throws java.lang.Exception
	{
		int requiredSum = Integer.parseInt(args[0]);
		int i = 100;
		int tmp;
		int sum;
		do {
			sum = 0;
			tmp = i;
			while (tmp > 0) {
				sum += tmp % 10;
				tmp = tmp / 10;
			}
			if (sum == requiredSum) {
				System.out.println(i);
			}
		} while (++i < 1000);
	}
у тебя ошибка в коде
Java-машина напечатала сообщение об ошибке и аварийно завершила свою работу. Что же содержится в этом сообщении?
Сообщение о том, что произошла ошибка (исключение: слово Exception).
Тип ошибки: ArrayIndexOutOfBoundsException и причина ошибки — индекс 2.
список вызванных методов (в обратном порядке), имена файлов и номера строк.
Александр_1с вне форума Ответить с цитированием
Старый 02.12.2014, 13:50   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
у тебя ошибка в коде
не. Это у тебя, Александр_1с проблемы с понимаем кода на Java

данный код подразумевает, что входное число передаётся в программу через командную в качестве первого аргумента.
Если вы пользуетесь средой (NetBeans, например), то на проект нажмите правой кнопкой, выберите Properties и там в разделе Run задайте аргумент.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 02.12.2014, 13:51   #9
buriat
Форумчанин
 
Регистрация: 28.06.2010
Сообщений: 189
По умолчанию

Works on my pc

Исправляй.
buriat вне форума Ответить с цитированием
Старый 02.12.2014, 13:58   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

А можешь написать задание искомого числа прямо в коде программы:
Код:
     int requiredSum = 4; // ищем числа с суммой цифр равной 4-м

а ещё можешь написать ввод нужного числа.
Вот, например, ввод с консоли:
Код:
import java.io.BufferedReader;
import java.io.InputStreamReader;


public class Main {

	public static void main (String[] args) throws java.lang.Exception
	{
              System.out.print("Введите число: ");
              BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
              String str = reader.readLine();
              reader.close();

		int requiredSum = Integer.parseInt(str);
		int i = 100;
		int tmp;
		int sum;
		do {
			sum = 0;
			tmp = i;
			while (tmp > 0) {
				sum += tmp % 10;
				tmp = tmp / 10;
			}
			if (sum == requiredSum) {
				System.out.println(i);
			}
		} while (++i < 1000);
                System.out.println("Done.");
	}

}
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Циклы с постусловием и с предусловим BaTpyXaaa Visual C++ 3 29.11.2013 19:56
необходимо составить программу вычисления с параметром,постусловием и предусловием.циклы Машулечек Паскаль, Turbo Pascal, PascalABC.NET 2 26.05.2012 20:55
Циклы с предусловием и постусловием. Ввод/вывод в стиле Си (printf, scanf). Mila_ Помощь студентам 1 06.12.2011 13:49
паскаль. циклы с пред- и постусловием. ирэна Помощь студентам 2 03.12.2011 10:39
Циклы с постусловием и с предусловим (while; do ... while) breikist Помощь студентам 2 10.11.2010 23:38