Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.10.2010, 01:16   #1
Lilika
 
Регистрация: 28.10.2010
Сообщений: 3
Восклицание Массивы и матрицы

всем доброго времени суток)
в языке си я так сказать начинающий и это ещё слабо сказано, алгоритм понимаю но как это грамотно написать (а основном проблема с подбором условия) не знаю
разъясните пожалуйста условия задач

1) Задан вещественный массив размера N. Отсортировать массив в порядке возрастания абсолютного отклонения значения элемента от значения среднего арифметического всех элементов массива.
пример: 12345 а в итоге 32415

как понимаю легче при вводе считать сумму и найти среднее арифметическое? не надо знать его позицию - ещё проход делать?
перестановка и её условие как понимаю такая (код):
for(i=n-1; i >1; i++)
for(j=0; j>i; j++)
if (fabs(a[j]-a[0])>fabs(a[i]-a[0]))

есть ли смысл использовать дополнительный массив или проще можно??

2) Задан целочисленный массив размера N. Поменять местами i-ую j-ую серии элементов массивы. Номера i и j вводит пользователь.

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

3) Задана квадратная целочисленная матрица N*M. Определить значения максимального из минимальных элементов диагоналей, параллельных главной, начиная с единичной. Обнулить диагональ, содержащую этот элемент.

чувствую себя очено глупо т.к. не могу додумать условие принадлежности элемента диагонали параллельной главной, с этим и нужна помощь по этой задаче (наведите на мысль)
Lilika вне форума Ответить с цитированием
Старый 28.10.2010, 08:14   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Задан вещественный массив размера N. Отсортировать массив в порядке возрастания абсолютного отклонения значения элемента от значения среднего арифметического всех элементов массива.
пример: 12345 а в итоге 32415
При вводе массива высчитай его среднее арифметическое. Далее проходи методом пузырька, считай |a[i]-Среднее арифметическое| и |a[j]-Среднее арифметическое|
Если первое больше второго получается то поменять местами a[i] и a[j]
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.10.2010, 09:45   #3
Lilika
 
Регистрация: 28.10.2010
Сообщений: 3
По умолчанию

ой точно)) Stilet, спасибо за помощь с первой задачкой

вторая и третья пока всё так же вызывают затруднения
Lilika вне форума Ответить с цитированием
Старый 29.10.2010, 06:13   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
2) Задан целочисленный массив размера N. Поменять местами i-ую j-ую серии элементов массивы. Номера i и j вводит пользователь.
Код:
int i,j,k;
Printf("введите i");scanf("%d",&i);
Printf("введите j");scanf("%d",&j);
k=a[i];a[i]=a[j];a[j]=k;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 29.10.2010, 17:09   #5
Lilika
 
Регистрация: 28.10.2010
Сообщений: 3
По умолчанию

ещё раз спасибо за ответ, но есть неувязочка с задачей номер 2....
дело в том что серия это последовательность элементов с одинаковыми значениями, ей является в том числе и один элемент

и сама проблема в том, что если, например, i-ая серия состоит из 1 элемента, а j-ая из 2 и более, то нужно смещать все элементы массива

понятно что нужен цикл, и, к примеру, доп переменные для хранения позиции начала и конца серии или .... я уже не знаю что придумать - но дополнительный массив использовать НЕЛЬЗЯ

как быть? менять элементы как предложил Stilet и писать условие проверки совпадения размеров серий и цикл, который будет вставлять элемент в нужную позицию массива и смещать все последующие элементы
Lilika вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Матрицы (Двумерные массивы) Mizantrop Помощь студентам 1 21.03.2010 17:27
Массивы и матрицы amnellk Помощь студентам 0 20.12.2009 10:14
матрицы и массивы Gigantis Помощь студентам 2 29.06.2009 20:24
Задача на матрицы и массивы kaliha Помощь студентам 3 17.01.2008 23:46
двумерные массивы(матрицы) dunvegan Помощь студентам 4 05.11.2007 14:32