С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
1 / 1 / 0
Регистрация: 09.11.2012
Сообщений: 101

Алгоритм исправить для Java

15.11.2012, 22:18. Показов 1109. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, подскажите пожалуйста как мне исправить мой код, чтобы решалась задача? Я недавно начал изучать, и есть ряд проблем. И еще не получается добавить исключение, чтобы при пустой строке просило ввести еще раз. Очень срочно надо. вот мой код
Кликните здесь для просмотра всего текста
import java.util.Scanner;

public class trete {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

Scanner input = new Scanner(System.in);
float p1=0;
float p2=0;
float p3=0;
float p0=0;
float p4=0;
float u1=0;
float u2=0;
float u3=0;
float u4=0;
System.out.print("Введите плату за посадку: ");
p0=input.nextInt();
System.out.print("Первый пассажир вышел: ");
p1=input.nextInt();
System.out.print("Второй пассажир вышел: ");
p2=input.nextInt();
System.out.print("Третий пассажир вышел: ");
p3=input.nextInt();
p4=p0+p1+p2+p3;
System.out.print("Сумма по счестчику: ");
System.out.print(p4);
u1=p0/3+p1/3;
System.out.print("\n1й должен заплатить: ");
System.out.print(u1);
u2=p0/3+p1/3+p2/2;
System.out.print("\n2й должен заплатить: ");
System.out.print(u2);
u3=p0/3+p1/3+p2/2+p3;
System.out.print("\n3й должен заплатить: ");
System.out.print(u3);
if (p1==0)
{
u1=0;

}
if (p2==0)
{
u2=0;

}
if (p3==0)
{
u3=0;

}
u4=u1+u2+u3;
System.out.print("\nОбщая сумма по расчетам: ");
System.out.print(u4);

}

}


Такси. В такси одновременно сели три пассажира. Когда вышел первый пассажир,
на счетчике было р1 рублей; когда вышел второй — р2 рублей. Сколько должен был
заплатить каждый пассажир, если по окончании поездки счетчик показал р3 рублей?
Плата за посадку составляет р0 рублей. Тестирование: общая сумма оплаты пассажирами
должна совпадать с показанием счетчика по окончании по ездки. Рассмотрим крайние
ситуации. По справедливости, если все три пассажира вышли одновременно, они
должны заплатить по (р0 + р3)/3 руб. Если же первый и второй пассажиры «передумали ехать»,
они платят по p0/3 руб., а оставшаяся сумма ложится на счет третьего пассажира.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.11.2012, 22:18
Ответы с готовыми решениями:

Как записать алгоритм для java
Как записать алгоритм для java задачи 1.Вычислить и вывести на печать в виде таблицы все значения n и функции y при n = 1, 2, … , 40:

Алгоритм для поиска и удаления повторяющихся элементов связного списка. Java
Здравствуйте, помогите пожалуйста придумать алгоритм для поиска и удаления повторяющихся элементов связного списка на java. Никак не могу...

Рекурсивный алгоритм для вычисления выражения. Исправить ошибки в коде
Доброго времени суток. Задача стоит такова: составить рекурсивны ...

5
Музыка нас Связала
 Аватар для Fonduee
232 / 232 / 52
Регистрация: 26.03.2008
Сообщений: 616
15.11.2012, 23:04
Все варианты учтены:

1ый платит: ((p1 + p0) / 3)
2ой платит: ((p1 + p0) / 3) + ((p2 - p1) / 2)
3ий платит: ((p1 + p0) / 3) + ((p2 - p1) / 2) + (p3 - p2)
0
1 / 1 / 0
Регистрация: 09.11.2012
Сообщений: 101
15.11.2012, 23:13  [ТС]
Еще более неправильно работать стал. Теперь когда по расчетам сумму выводит, она получается в 2 раза меньше чем должна быть
0
Музыка нас Связала
 Аватар для Fonduee
232 / 232 / 52
Регистрация: 26.03.2008
Сообщений: 616
15.11.2012, 23:19
У меня все работает, либо я условия не так прочёл или понял.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import java.util.Scanner;
 
public class Taxi
{
 
    public static void main(String[] args)
    {
        float p0, p1, p2, p3, r0, r1, r2, r3;
 
        Scanner input = new Scanner(System.in);
 
        System.out.print("Плату за посадку: ");
        p0 = input.nextFloat();
        System.out.print("1-ый пассажир: ");
        p1 = input.nextFloat();
        System.out.print("2-ой пассажир: ");
        p2 = input.nextFloat();
        System.out.print("3-ий пассажир: ");
        p3 = input.nextFloat();
 
        System.out.println("*** ШИКАРН-О высчитывает ***");
 
        r1 = (p1 + p0) / 3;
        r2 = r1 + ((p2 - p1) / 2);
        r3 = r2 + (p3 - p2);
 
        System.out.println("1ый платит: " + r1);
        System.out.println("2ой платит: " + r2);
        System.out.println("3ий платит: " + r3);
 
    }
}
Сумма после 3-его (40) + 10-ка за посадку == 10 + 15 + 25

Code
1
2
3
4
5
6
7
8
Плату за посадку: 10
1-ый пассажир: 20
2-ой пассажир: 30
3-ий пассажир: 40
*** ШИКАРН-О высчитывает ***
1ый платит: 10.0
2ой платит: 15.0
3ий платит: 25.0
0
1 / 1 / 0
Регистрация: 09.11.2012
Сообщений: 101
16.11.2012, 00:05  [ТС]
У меня считает когда числа разные, а когда вводишь одинаковые значения, все не так. У меня не получается реализовать то, когда пассажиры вышли вместе, и если 2е не сели, и получается что оплачивает все 3й. Я немного подредактировал код, возможно Вы найдете ошибку? Посмотрите пожалуйста
Кликните здесь для просмотра всего текста
import java.util.Scanner;

public class trete {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

Scanner input = new Scanner(System.in);
float p1=0;
float p2=0;
float p3=0;
float p0=0;
float p4=0;
float u1=0;
float u2=0;
float u3=0;
float u4=0;
float p5=0;
float u5=0;
System.out.print("Введите плату за посадку: ");
p0=input.nextInt();
System.out.print("Первый пассажир вышел: ");
p1=input.nextInt();
System.out.print("Второй пассажир вышел: ");
p2=input.nextInt();
System.out.print("Третий пассажир вышел: ");
p3=input.nextInt();
p4=p0+p1+p2+p3;
System.out.print("Сумма по счестчику: ");
System.out.print(p4);
if ( (p1==p2) && (p1==p3) && (p2==p3) )
{
p5 = (p0 + p3)/3;
/*u1 =((p1 + p0) / 3);
u2=((p1 + p0) / 3) + ((p2 - p1) / 2);
u3=((p1 + p0) / 3) + ((p2 - p1) / 2) + (p3 - p2);*/
System.out.print("\nОбщая сумма по расчетам: ");
System.out.print(p5);
/*System.out.print("\n1й должен заплатить: ");
System.out.print(u1);
System.out.print("\n2й должен заплатить: ");
System.out.print(u2);
System.out.print("\n3й должен заплатить: ");
System.out.print(u3);*/
}
else{
//u1 =((p1 + p0) / 3);
u1=p0/3+p1/3;
System.out.print("\n1й должен заплатить: ");
System.out.print(u1);
//u2=((p1 + p0) / 3) + ((p2 - p1) / 2);
u2=p0/3+p1/3+p2/2;
System.out.print("\n2й должен заплатить: ");
System.out.print(u2);
//u3=((p1 + p0) / 3) + ((p2 - p1) / 2) + (p3 - p2);
u3=p0/3+p1/3+p2/2+p3;
System.out.print("\n3й должен заплатить: ");
System.out.print(u3);
//u1 = ((p1 + p0) / 3);
//u2 = ((p1 + p0) / 3) + ((p2 - p1) / 2);
//u3 = ((p1 + p0) / 3) + ((p2 - p1) / 2) + (p3 - p2);
u4=u1+u2+u3;
System.out.print("\nОбщая сумма по расчетам: ");
System.out.print(u4);

}
}

}
0
Музыка нас Связала
 Аватар для Fonduee
232 / 232 / 52
Регистрация: 26.03.2008
Сообщений: 616
16.11.2012, 00:27
Смотрите мной написанный код или дайте данные для теста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.11.2012, 00:27
Помогаю со студенческими работами здесь

Помогите алгоритм для char переделать в алгоритм для float
char* DecToBin(char x, char* str) { int i; for (i = sizeof(x)*8-1; i>=0; i--) { str = (x&1 == 1) ? '1' : '0'; x = x >>...

Алгоритм цепочка (исправить код)
Условие Задан набор неповторяющихся пар (Ai,Aj), где Ai, Aj принадлежат множеству А={A1,A2,…,An}. Необходимо составить цепочку...

Необходимо исправить код на Java!
Не работает код. Помогите разобраться,в чём дело и исправить их! Спасибо огромное! /*import java.awt.EventQueue; import java.awt.*; ...

Исправить алгоритм нахождения корней системы.
Не получается найти корни системы, помогите исправить алгоритм.

Исправить и прокомментировать алгоритм квадратичной интерполяции
исправьте алгоритм в С# не понимаю как работает это цикл class Program { static double f(double x) { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru