Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
32 / 15 / 5
Регистрация: 09.06.2017
Сообщений: 124
Записей в блоге: 2
1

Функции для обработки одномерных массивов

13.07.2017, 04:30. Просмотров 644. Ответов 3
Метки нет (Все метки)

С. Прата, задача 7.6,
Посмотрите, пожалуйста, насколько дубово (для текущего уровня) я решил задачу. Стыдно сказать, всё утро ковырялся ((

задача:
Кликните здесь для просмотра всего текста
Напишите программу, использующую описанные ниже функции.

Fill_array() принимает в качестве аргумента имя массива элементов типа double и размер этого массива. Она приглашает пользователя ввести значения double для помещения их в массив. Ввод прекращается при наполнении массива либо когда пользователь вводит нечисловое значение, и возвращает действительное количество элементов.

Show_array() принимает в качестве аргументов имя массива значений double, а также его размер, и отображает содержимое массива.

Reverse_array() принимает в качестве аргумента имя массива значений double, а также его размер, и изменяет порядок его элементов на противоположный.

Программа должна использовать эти функции для наполнения массива, обращения порядка его элементов, кроме первого и последнего, с последующим отображением.

решение:
Кликните здесь для просмотра всего текста
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
#include <iostream>
int Fill_array(double mas[], int n);
void Show_array(double mas[], int n);
void Reverse_array(double mas[], int n);
int main()
{
    double mass[8]; 
    int count = Fill_array(mass, 8);
    if(count == 0)
        return 0;   
    Show_array(mass, count);
    Reverse_array(mass, count);
    for (int i = 0; i < count; i++)
        std::cout << mass[i] << std::endl;
    return 0;
}//
int Fill_array(double mas[], int n)
{
    std::cout << "Enter 8 double, or q to quit:\n";
    int i;
    for(i = 0; i < 8; i++)
    {
        std::cout << i + 1 << ": ";
        std::cin >> mas[i];
        if(!std::cin)
            break;
    }
    return i;
}//
void Show_array(double mas[], int n)
{
    std::cout << "\nshow:" << std::endl;
    for (int y = 0; y < n; y++)
        std::cout << mas[y] << std::endl;
}
void Reverse_array(double mas[], int i)
{
    std::cout << "\nReverse:" << std::endl;
    double temp;
    int max = i-2;
    int min = 1;
    while (max > min)
    {
        temp = mas[min];
        mas[min] = mas[max];
        mas[max] = temp;
        max--;
        min++;
    }   
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.07.2017, 04:30
Ответы с готовыми решениями:

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

Разработать программу, содержащую две функции: • функция обработки одномерных динамических массивов согласно варианту за
Написал первую часть, но с ошибками, нужно дописать вторую и исправить код, но не знаю как, только...

Создать модуль для обработки одномерных массивов с помощью классов
Создать модуль для обработки одномерных массивов с помощью классов. Добавлено через 21 час 5...

Алгоритмы с неразветвленным телом цикла Разработать алгоритм и программу с единственным циклом для обработки одномерных массивов.
При заданных координатах C1,C2,...,Cn одной точки и ко-ординатах B1,B2,...,Bn другой точки...

3
с++
1198 / 484 / 211
Регистрация: 15.07.2015
Сообщений: 2,406
13.07.2017, 04:49 2
Цитата Сообщение от AmbA Посмотреть сообщение
Стыдно сказать, всё утро ковырялся ((
0
Модератор
Эксперт С++
9915 / 8438 / 5129
Регистрация: 18.12.2011
Сообщений: 22,595
13.07.2017, 05:42 3
В Reverse_array
Цитата Сообщение от AmbA Посмотреть сообщение
int max = i-2;
int min = 1;
а почему нулевой и i-1 элементы оставляете на месте?

Добавлено через 1 минуту
И зачем в main
Цитата Сообщение от AmbA Посмотреть сообщение
for (int i = 0; i < count; i++)
std::cout << mass[i] << std::endl;
если есть Show_array
1
32 / 15 / 5
Регистрация: 09.06.2017
Сообщений: 124
Записей в блоге: 2
13.07.2017, 06:18  [ТС] 4
Цитата Сообщение от zss Посмотреть сообщение
а почему нулевой и i-1 элементы оставляете на месте?
По условию задачи:
обращения порядка его элементов, кроме первого и последнего
Цитата Сообщение от zss Посмотреть сообщение
И зачем в main
Да. Надо было. Я вызвал каждую функцию по разу, и успокоился )
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.07.2017, 06:18

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Комплекс типовых задач обработки числовых одномерных массивов
1. Разработать и отладить программу на С++ для решения комплекса типовых задач обработки числовых...

Программирование типовых числовых задач обработки одномерных массивов
1) Вычислить и запомнить в структуре одномерного массива (таблица 1) фиксированное количество...

Функции для обработки массивов
Добрый день! Помогите пожалуйста с программой. Есть две функции. В первой функции считывается...

Функции для обработки массивов
Разработать программу на С++ используя функции форматированного ввода-вывода языка Си . Исходные...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.