0 / 0 / 0
Регистрация: 13.01.2019
Сообщений: 50
|
||||||
1 | ||||||
Проверка условий позволющих выполнить соответствующие пункты задания18.11.2019, 08:14. Показов 1320. Ответов 20
Метки нет (Все метки)
Всем доброго дня!
Прошу помочь с исправлением кода. Изначально задание было такое: В одномерном массиве, состоящем из n целых элементов, вычислить: А) количество пар x[i] и x[i + 1], таких, что x[i] > x[i + 1]; Б) сумму элементов массива, расположенных после минимального элемента массива; В) произведение элементов массива, расположенных до первого элемента массива, кратного 5. Написал код:
Внесите корректировки в код. Измените алгоритм решения заданий Б) и В) таким образом, чтобы отслеживались ситуации: минимальный элемент – последний; элемент, кратный пяти – первый. В этом случае невозможно найти ни сумму, ни произведение. Не могу понять - что нужно сделать? Помогите, пжл.
0
|
18.11.2019, 08:14 | |
Ответы с готовыми решениями:
20
Составить программу, проверяющую истинность условий и выводящую на экран соответствующие сообщения Задания условий в фильтрации Excel 2016 Проверка наличия задания и назначение задания Как создать несвязную форму для задания условий отбора данных в отчет? |
516 / 408 / 188
Регистрация: 08.04.2013
Сообщений: 1,743
|
|
18.11.2019, 08:19 | 2 |
вывести сообщение что первый элемент кратен 5 и результата не будет , то же самое с мин элементом
к парам есть вопрос 8, 6, 1 это будет странно если здесь 2 пары, 6 в первой паре, а может быть во второй?
0
|
0 / 0 / 0
Регистрация: 13.01.2019
Сообщений: 50
|
|
18.11.2019, 08:24 [ТС] | 3 |
не совсем понял.
Можете подробнее?
0
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|
18.11.2019, 08:57 | 4 |
Ога, и невозможно вычислить три в степени ноль, так как получается ноль сомножителей. А произведение нуля сомножителей не бывает!
Правильным курсом решения задачи мне видится смена преподавателя, несущего какую-то дичь.
0
|
516 / 408 / 188
Регистрация: 08.04.2013
Сообщений: 1,743
|
|
18.11.2019, 09:18 | 5 |
Будут Элементы для произведения в массиве , если первый элемент кратен 5 , это вопрос вам и как вы ответите? Как поняли так и отвечайте
0
|
0 / 0 / 0
Регистрация: 13.01.2019
Сообщений: 50
|
|
18.11.2019, 09:30 [ТС] | 6 |
Это я понял, что если он первый, я тот последний - ничего не будет.
Как в коде это реализовать?
0
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|
18.11.2019, 09:33 | 7 |
С чего они вообще быть должны то?
Задача: Вася должен купить банку яги, которая стоит сто рублей. У него есть N купонов на скидку, каждый купон умножает итоговую цену на K[n]. Сколько должен заплатить Вася, если он использует все имеющиеся у него купоны? Преподаватель: а ежели у Васи ноль купонов, то умножать нечего. Значит, Вася яги купить не может, даже если у него в кармане миллион! У Васи не было ни рубля, но он развел N лохов на бабки. С каждого лоха он получил K[n] рублей. Сколько денег у Васи? Преподаватель: да говорю же вам, если N равно нулю, то складывать нечего! А значит даже участковый не может сказать сколько денег у Васи!
1
|
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
|
||||||
19.11.2019, 02:49 | 8 | |||||
ilna, всё по теме говорит Ваш преподаватель - если есть
не нужно ничего считать, а просто выдать соответствующее сообщение. учёл эти замечания и внёс небольшие корректировки ( размер массива лучше задавать с клавиатуры, поэтому применил динамический массив, min по условию задачи находить не требуется, интересует только его индекс, произведение растёт быстро - лучше тип long long)
вот так наверное делать не следует а если кратных 5 в массиве нет ?
0
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|
19.11.2019, 04:38 | 9 |
Значит, нет элементов массива расположенных перед элементом кратным пяти.
Значит, мы должны найти произведение вырожденного числового ряда состоящего из нуля элементов. Для начала умножим искомое произведение на произведение двух единиц=1*1*(произведение). У нас теперь получается произведение числового ряда из нуля элементов и еще двух единичек сверху. Согласны? Нуль элементов плюс две единички это две единички и есть. Согласны? Единичка на единичку это единичка. Согласны? И так, 1*1*(произведение)=1 Стоп. Нам же надо было произведение без единичек. Окей, делите левую и правую части равенства на единичку в квадрате. Произведение=1/(1*1)=1. И так, задача решена. Произведение вырожденного ряда из нуля элементов равно единице! Достаточно разжевал?
0
|
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
|
|
19.11.2019, 05:14 | 10 |
Renji, Ваши рассуждения мягко говоря несколько непонятны. Вы считаете, что если по условию нужно найти элементы перед элементом назовём его K, а элемента K в массиве нет, нужно что-то находить ? мне кажется логичным другое решение - если такого элемента нет, нужно выдать сообщение, что его нет. произвести какие-либо расчёты перед несуществующим элементом невозможно.
0
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|
19.11.2019, 05:33 | 11 |
Конечно. Если от вас требуют посчитать крылья от слона, вы должны ответить что крыльев ровно ноль штук. А не отмазываться что у слонов крыльев не бывает. Согласны?
В теории множеств таким нулем является пустое множество. Если нужно найти элементы перед K, а никакого K у нас нет, значит ответом будет пустое множество. Если вам нужно что-то от этих элементов посчитать, вам нужна функция заданная для пустого множества. И вот только если такой функции нет, начинаем чесать репку.
0
|
0 / 0 / 0
Регистрация: 13.01.2019
Сообщений: 50
|
|
19.11.2019, 08:42 [ТС] | 12 |
Добрый день!
Не совсем понял, как происходит расчет? - Выводит, что введено 5 элементов - выводит, что кратных 5 нет - странно считает сумму. Может я что-то не так ввожу?
0
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|
19.11.2019, 08:47 | 13 |
0
|
0 / 0 / 0
Регистрация: 13.01.2019
Сообщений: 50
|
|
19.11.2019, 08:49 [ТС] | 14 |
то же самое, только сумму изменил
0
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
||||||
19.11.2019, 09:11 | 15 | |||||
Ну, попробуйте так (особо не тестировал):
0
|
0 / 0 / 0
Регистрация: 13.01.2019
Сообщений: 50
|
|
19.11.2019, 09:17 [ТС] | 16 |
после введения элементов через пробел или запятую консоль просто закрывается
0
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|
19.11.2019, 09:18 | 17 |
Три раза std::cin.get() в конец программы.
0
|
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
|
|
19.11.2019, 13:12 | 18 |
конечно не так. там же приглашения к вводу есть. сначала предлагается ввести размер массива n - это может быть любое число ( набрать например 10 нажать <Enter> ). затем предлагается ввести 10 элементов массива (после каждого элемента нажимать <Enter> или набрать все элементы через пробел и нажать <Enter>)
10 5 4 3 2 1 9 8 7 6 0 count pair = 8 min element last multiple of 5 first
1
|
0 / 0 / 0
Регистрация: 13.01.2019
Сообщений: 50
|
|
19.11.2019, 13:41 [ТС] | 19 |
а local sum что считает?
0
|
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
|
|
19.11.2019, 13:55 | 20 |
то что требуется по условию
в Вашем коде кстати точно такой цикл
1
|
19.11.2019, 13:55 | |
19.11.2019, 13:55 | |
Помогаю со студенческими работами здесь
20
Если выполнено несколько условий, выполнить одно действие Проверка условий Проверка условий Проверка условий Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |