Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
1 / 1 / 0
Регистрация: 25.10.2015
Сообщений: 18

Суммирование и произведение

03.11.2016, 22:06. Показов 2054. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, помогите пожалуйста исправить ошибки в коде. Сам недавно начал изучать Java. Пытаюсь сделать, но почему-то результат получается неверный. Нужно выполнить суммирование для i от 1 до 8 по выражению (i+a) и отдельно выполнить произведение для j от 1 до 4 по выражению (j+4). Когда беру a = 1, то корректно считает, а когда, например а =5, то уже неправильно считает. А произведение всегда = 5 и всё. Тоже неверно... Ниже представлю свой код. Укажите на ошибки, пожалуйста.
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
33
34
35
36
37
38
39
package user;
 
/**
 *
 * @author user
 */
 
import java.io.*; 
import java.util.Scanner;
import static java.lang.Math.*;
 
public class user {
 
 
    public static void main(String[] args) {
 
 
                
        System.out.println("Введите значение a: ");
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        
        int sum = 0;
        for (int i = 1; i <= 8; i=i++) {
        i = i + a;
        sum = sum + i;
}
System.out.println("Значение суммы 'sum' равно: "+sum);
 
        int proiz = 1;
        for (int j = 1; j <= 4; j=j++) {
        j = j + 4;
        proiz = proiz * j;
}
System.out.println("Значение суммы 'proiz' равно: "+proiz);
 
    }
    
}
Добавлено через 11 минут
То есть проблема только в том, что когда я делаю j+4 и заданию переменной 'a' значение больше чем 1, например, программа неверно считает. Но если a = 1 и j+1 то всё верно. В чём дело?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.11.2016, 22:06
Ответы с готовыми решениями:

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

Суммирование матриц в NetBeans!!!
Курсовая работа на тему: Суммирование матриц. В нулевом процессоре набираются &quot;кусочки&quot; и суммируются. На кластере-...

Суммирование элементов множества
Денёчка, имеется такая задача С использованием множества выполнить попарное суммирование произвольного конечного ряда чисел по следующим...

8
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
03.11.2016, 22:19
Лучший ответ Сообщение было отмечено ManFrom как решение

Решение

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int a = 2;
        System.out.println(IntStream.rangeClosed(1, 8).map(i -> i + a).sum());
        System.out.println(IntStream.rangeClosed(1, 4).map(i -> i + a).reduce((i, j) -> i * j).getAsInt());
 
        int sum = 0;
        for (int i = 1; i <= 8; i++) {
            sum = sum + i + a;
        }
        
        int proiz = 1;
        for (int j = 1; j <= 4; j++) {
            proiz = proiz * (j + a);
        }
        System.out.println(sum);
        System.out.println(proiz);
1
1 / 1 / 0
Регистрация: 25.10.2015
Сообщений: 18
03.11.2016, 22:30  [ТС]
Спасибо!
0
 Аватар для zarko97
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
23.04.2017, 16:07
xoraxax, а форычем не проще?
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
23.04.2017, 18:09
Цитата Сообщение от zarko97 Посмотреть сообщение
а форычем не проще?
если тебе проще форычем, делай форычем
0
 Аватар для zarko97
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
23.04.2017, 18:11
xoraxax, а есть в яве стандартный метод для суммирования с предикатом аля std::accumulate в плюсах?
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
23.04.2017, 18:20
Цитата Сообщение от zarko97 Посмотреть сообщение
std::accumulate
понятия не имею, что это такое
0
 Аватар для zarko97
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
23.04.2017, 18:23
xoraxax, значит все-таки нет...
0
 Аватар для Snickers077
15 / 12 / 7
Регистрация: 12.01.2014
Сообщений: 62
23.04.2017, 18:33
Как и написал xoraxax, Ваш код можно подправить так:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 public static void main(String[] args) {
        
          System.out.println("Введите значение a: ");
        Scanner sc = new Scanner(System.in);
        int a;
        a = sc.nextInt();
        System.out.println("After a");
        int k =0;
        int sum = 0;
        for (int i = 1; i <= 8; i++) {
        k = i + a;
        sum = sum + k;
}
System.out.println("Значение суммы 'sum' равно: "+sum);
        
        int m;
        int proiz = 1;
        for (int j = 1; j <= 4; j++) {
        m= j + 4;
        proiz = proiz * m;
}
System.out.println("Значение  'proiz' равно: "+proiz);
    }
Вот тут
Java
1
for (int i = 1; i <= 8; i=i++)
из-за Этого
Java
1
for i=i++
программа зависла. Так лучше не писать, а писать просто i++.

И как Вы уже наверное догадались ваша программа считала неправильно из-за таких вот строчек:
Java
1
 i = i + a;
в цикле for эта переменная используется для изменения шага итераций цикла и в пределах цикла ее обычно меняют только тут:
Java
1
for (int i = 1; i <= 8; i=i++)
, а у Вас она меняется еще и в теле цикла, из-за этого неправильно считала программа.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.04.2017, 18:33
Помогаю со студенческими работами здесь

Суммирование конечного ряда чисел
С использованием множества выполнить попарное суммирование произвольного конечного ряда чисел по следующим правилам: на первом этапе...

Суммирование и произведение ряда чисел
Помогите решить (значение m и n вводятся с клавиатуры) \prod_{j=1}^{m}\sum_{i=1}^{n}{a}_{ij} {a}_{ij}=j/(3+i*i)

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

Суммирование и суммирование с переносом
Добрый всем день! поясните пожалуйста по операндам - ASEM-51.. add A, R3 и addc A, R3

Последовательно вводятся числа, найти их произведение. Ввод остановить если произведение стало =0.
1)Последовательно вводятся числа, найти их произведение. Ввод остановить если произведение стало =0. 2)Определить сколько раз в строке...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Данные берутся из. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru