|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
10.04.2010, 15:40 | #1 |
Регистрация: 04.04.2010
Сообщений: 3
|
кто может исправить ошибку в моем коде написанном на С++
Помоги исправить ошибки к задачке на С++ я уже не знаю к кому обратиться.
Задание: Программа должна работать следующим образом. Сначала пользователь вводит количество обрабатываемых чисел (значение n). Затем, он вводит n чи-сел в одномерный массив. После этого программа должна обработать эти числа и вывести результат согласно варианту задания. сама задачка: Найти число, которое «дальше всех» от среднего арифметическо-го, если таких чисел несколько, то в качестве результата использо-вать число, идущее первым по порядку среди таких чисел. Тут мои попытки: #include<math.h> #include<iostream.h> int main(void){ int n; cin>>n;// вводим размер массива int *mas new int[n]; // динамически выделяем память под массив cin>>mas; // вводим значения елементов float sr=0; for(int i=0;i<n;i++) sr+=mas[i]/n; // ищем среднее значения int index= 0; for(i=0;i<n;i++) if( abs(sr-mas[index]) < abs(sr-mas[i]) ) // ищем индекс элемента с наибольшим расстоянием от среднего значения index=i; cout<<mas[index]; delete []mas; //освобождаем память выделеную под массив } |
10.04.2010, 16:27 | #2 |
Форумчанин
Регистрация: 20.03.2009
Сообщений: 272
|
Вроде пашет
Код:
|
10.04.2010, 17:27 | #3 |
Регистрация: 04.04.2010
Сообщений: 3
|
есть ошибки при компиляции
|
10.04.2010, 17:36 | #4 |
Пользователь
Регистрация: 02.03.2010
Сообщений: 59
|
Код:
|
10.04.2010, 17:45 | #5 |
Форумчанин
Регистрация: 20.03.2009
Сообщений: 272
|
Андрей777,
какую среду разработки используете? blondino4ka_milk, дабловский массив не поможет и он не нужен, если ошибка была на этапе компиляции, то что-то не так с синтаксисом, а не с типами данных. |
10.04.2010, 20:35 | #6 |
Регистрация: 04.04.2010
Сообщений: 3
|
|
10.04.2010, 21:14 | #7 |
Форумчанин
Регистрация: 20.03.2009
Сообщений: 272
|
Этот код идеально работает под ms visual studio 2008, win32 console application. Возможно, вам нужно добавить в заголовок using namespace std; Я не силен в прошлых версиях студии. Попробуйте такой код. Если тоже не скомпилируется, выложите текст ошибки.
Код:
Последний раз редактировалось Tirendus; 10.04.2010 в 21:16. |
10.04.2010, 22:49 | #8 |
Новичок
Джуниор
Регистрация: 10.04.2010
Сообщений: 1
|
При тестировании варианта Tirendus'a я заметил, что программа некорректно ведет себя при вводе, например, вот таких чисел:
3 (количество элементов) 2000 (1-й элемент) 2001 (2-й элемент) 5 (3-й элемент). Здесь наиболее "отклоненным" был элемент с индексом 2 (число 5). Программа же посчитала, что таким элементом будет число 2001. Все это приводит к выводу, что алгорит отбора "наиотклонившегося" числа некорректен, ввиду чего прилагаю рабочий свой (код тестировался на Dev-C++ 4.9.8.0): Код:
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помоготе исправить ошибку в коде | Operator-cn | Общие вопросы C/C++ | 4 | 22.10.2009 23:40 |
Кто может исправить ошибку в коде программы на с++ | Lesj | Фриланс | 4 | 18.06.2009 00:10 |
Исправить ошибку в коде VBA. | NitriNKa | Помощь студентам | 2 | 29.04.2009 22:22 |
Помогите исправить ошибку в коде... | prizrak1390 | Общие вопросы Delphi | 4 | 26.04.2008 13:19 |