С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.70/88: Рейтинг темы: голосов - 88, средняя оценка - 4.70
-6 / 1 / 1
Регистрация: 09.03.2017
Сообщений: 122

Найти минимальный по модулю элемент массива

24.11.2017, 16:38. Показов 16576. Ответов 10

Студворк — интернет-сервис помощи студентам
В одномерном массиве, состоящем из n целых элементов, вычислить:

1) минимальный по модулю элемент массива;

2) сумму модулей элементов массива, расположенных после первого элемента, равного нулю;

3) преобразовать массив таким образом, чтобы в первой его половине располагались элементы, стоявшие в четных позициях, а во второй половине — элементы, стоявшие в нечетных позициях.

Преобразование и сумма работают не корректно.
Подскажите пожалуйста,в чем ошибка?
Вот наработка (код)
C++
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <iostream>
#include <conio.h>
#include <math.h >
 
//Лабараторная работа 4 (10 вариант)
//Тема: Динамические одномерные массивы.
using namespace std;
 
int main(int argc,char* argv[])
{
    setlocale(LC_ALL, "rus");
    int i,n,ibeg=0,imin,min=0,sum=0;
    
      cout<<"\n Введите n= "; cin>>n;
      cout<<"\n Введите элементы массива:"<<endl<<endl;
      int*p=new int[n];
      for(i=0;i<n;i++)cin>>p[i];
        min=p[0];
        for(i=0;i<n;i++)
    if(fabs(p[i])<fabs(min))
    {
        min=p[i];
        imin=i;
    }
      cout<<"\nМинимальный элемент: "<<min<<endl;
      cout<<"\nПозиция минимального элемента:"<<imin+1<<endl;
    for(i=0;i<n;i++);
    if(p[i]==0)
    
    {
    
    ibeg=i;
    break;
    
    }
 
    for(i=ibeg+1;i<n;i++)sum+=p[i];
      cout<<"\n Сумма элементов расположенных после 1-го элемента равного нулю: "<<sum;
      cout<<"\n Преобразованный массив:"<<endl<<endl;
    for(i=0;i<n;i++)
    if(i% 2==false)
    {
        cout<<p[i]<<' ';
    }
    for(i=0;i<n-1;i++);
    if(i% 2)
    {
        cout<<p[i]<<' ';
    
    }
    getch();
    return 0;
}
1
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.11.2017, 16:38
Ответы с готовыми решениями:

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

Найти минимальный по модулю элемент массива
Помогите написать программу. В одномерном массиве, состоящем из n целых элементов, вычислить: 1) минимальный по модулю элемент массива;

Найти минимальный по модулю элемент массива
Разработать программу, соблюдая следующие требования:  использовать статические массивы;  число n (количество элементов массива) -...

10
24.11.2017, 17:31
 Комментарий модератора 
П.5.16.Правил
Запрещено создавать темы с множеством вопросов во всех разделах, кроме разделов платных услуг. Один вопрос - одна тема.
См. темы
Найти минимальный по модулю элемент массива
Найти сумму модулей элементов массива, расположенных после первого нулевого элемента
Переместить в начало массива элементы, стоявшие в четных позициях
0
-6 / 1 / 1
Регистрация: 09.03.2017
Сообщений: 122
24.11.2017, 17:40  [ТС]
В одномерном массиве, состоящем из n целых элементов, вычислить:
минимальный по модулю элемент массива;
сумму модулей элементов массива, расположенных после первого элемента, равного нулю;
преобразовать массив таким образом, чтобы в первой его половине располагались элементы, стоявшие в четных позициях, а во второй половине — элементы, стоявшие в нечетных позициях.

Преобразование и сумма работают не корректно.
Подскажите пожалуйста,в чем ошибка?
Вот наработка (код)

C++
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
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
#include <conio.h>
#include <math.h >
 
 
using namespace std;
 
int main(int argc,char* argv[])
{
    setlocale(LC_ALL, "rus");
    int i,n,ibeg=0,imin,min=0,sum=0;
    
      cout<<"\n Введите n= "; cin>>n;
      cout<<"\n Введите элементы массива:"<<endl<<endl;
      int*p=new int[n];
      for(i=0;i<n;i++)cin>>p[i];
        min=p[0];
        for(i=0;i<n;i++)
    if(fabs(p[i])<fabs(min))
    {
        min=p[i];
        imin=i;
    }
      cout<<"\nМинимальный элемент: "<<min<<endl;
      cout<<"\nПозиция минимального элемента:"<<imin+1<<endl;
    for(i=0;i<n;i++);
    if(p[i]==0)
    
    {
    
    ibeg=i;
    break;
    
    }
 
    for(i=ibeg+1;i<n;i++)sum+=p[i];
      cout<<"\n Сумма элементов расположенных после 1-го элемента равного нулю: "<<sum;
      cout<<"\n Преобразованный массив:"<<endl<<endl;
    for(i=0;i<n;i++)
    if(i% 2==false)
    {
        cout<<p[i]<<' ';
    }
    for(i=0;i<n;i++);
    if(i% 2)
    {
        cout<<p[i]<<' ';
    
    }
    getch();
    return 0;
}
0
174 / 134 / 105
Регистрация: 14.04.2016
Сообщений: 719
24.11.2017, 17:43
Андреевич15, во сколько раз легче просить решение, чем пытаться сделать самому?
0
-6 / 1 / 1
Регистрация: 09.03.2017
Сообщений: 122
24.11.2017, 17:57  [ТС]
Сам сделал все,что смог. Все попытки найти ошибку неудачны,поэтому пришлось обратиться за помощью.
0
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
24.11.2017, 18:02
Цитата Сообщение от Андреевич15 Посмотреть сообщение
Сам сделал все,что смог. Все попытки найти ошибку неудачны,поэтому пришлось обратиться за помощью.
А какие попытки были ? Отладчиком пользовались ? принято выкладывать текст ошибки
0
-6 / 1 / 1
Регистрация: 09.03.2017
Сообщений: 122
24.11.2017, 19:14  [ТС]
Не считает сумму элементов и не полностью выводит преобразованный массив
Миниатюры
Найти минимальный по модулю элемент массива  
0
174 / 134 / 105
Регистрация: 14.04.2016
Сообщений: 719
24.11.2017, 19:17
Андреевич15, сделайте два дополнительных массива, в которые скопируйте все элементы с чётных и нечётных позиций. После этого просто по очереди перенесёте значения в основной. Это наиболее просто способ, который не потребует каких-то сложных алгоритмов.
0
-6 / 1 / 1
Регистрация: 09.03.2017
Сообщений: 122
24.11.2017, 19:42  [ТС]
все-равно не пойму,что у меня здесь не так
0
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
24.11.2017, 20:47
Лучший ответ Сообщение было отмечено Андреевич15 как решение

Решение

Цитата Сообщение от Андреевич15 Посмотреть сообщение
что у меня здесь не так
В первой программе строка 27, во второй 26
C++
1
2
3
4
5
6
7
8
9
for(i=0;i<n;i++);
    if(p[i]==0)
    
    {
    
    ibeg=i;
    break;
    
    }
Для кого и для чего цикл ? Что выделяешь фигурными скобками ?
И ниже тоже.
1
-6 / 1 / 1
Регистрация: 09.03.2017
Сообщений: 122
25.11.2017, 02:58  [ТС]
Все дошло..... символ ";" после скобок в конце цикла оказался лишним. Его убрал,все заработало отлично. Всем спасибо )))
Цикл этот для поиска нулевого элемента.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.11.2017, 02:58
Помогаю со студенческими работами здесь

Динамический массив, найти минимальный по модулю элемент массива
Помогите пожалуйста.В одномерном массиве состоящем из n целых элементов, вычислить. минимальный по модулю элемент массива. У меня...

Массивы. Найти минимальный по модулю элемент массива. Найти сумму модулей элементов после первого нуля
народ,траблы,никак не могу понять массивы,подскажите пожалуйста /*1. Найти минимальный по модулю элемент массива. 2. Найти сумму...

Минимальный по модулю элемент массива
1. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) минимальный по модулю элемент массива; 2) сумму модулей...

Минимальный по модулю элемент массива
В одномерном массиве, состоящем из n целых элементов,вычислить: 1)минимальный по модулю элемент массива 2)сумму модулей элементов...

Вычислить минимальный по модулю элемент массива
В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1.минимальный по модулю элемент массива; 2.сумму модулей...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
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. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru