dido Опубликовано 16 мая, 2004 Жалоба Поделиться Опубликовано 16 мая, 2004 Имеется массив чисел. Требуется, начиная с первого числа, проделать такие операции: 1.каждые 12 чисел умножить на свой коэффициент. 2.найти сумму каждых 60 чисел и из этих сумм создать новый массив. Просьба помочь, желательно с фрагментом программы для ввода коэффициента. Ссылка на комментарий Поделиться на другие сайты Поделиться
Kuzmich Опубликовано 17 мая, 2004 Жалоба Поделиться Опубликовано 17 мая, 2004 Работа с массивами такая же, как и в Pascal... Условие только по-дурацки выдал... 1.каждые 12 чисел умножить на свой коэффициент. Как ты себе это предстывляешь... Может ты имел ввиду, каждое двенадцатое число? Просьба помочь, желательно с фрагментом программы для ввода коэффициента. Какой коэффициэнт? Индекс элемента массива может? Ссылка на комментарий Поделиться на другие сайты Поделиться
man2D Опубликовано 17 мая, 2004 Жалоба Поделиться Опубликовано 17 мая, 2004 dido Тут всё просто - делается с использованием циклов. Составь алгоритм и реализуй в код. Ссылка на комментарий Поделиться на другие сайты Поделиться
dido Опубликовано 17 мая, 2004 Автор Жалоба Поделиться Опубликовано 17 мая, 2004 Kuzmich Имеется массив чисел (1,3,55,4,7,23,4,66,5,11,34,1,9,8,10,25,...,44). Первые 12 чисел делжим на 5, следующие 12 - на 3 и т.д. и создаем новый массив с этих частных. Потом находим сумму с первого по 60-е число нового массива, далее - со второго по 61-е и т.д. Застрял на вводе этого самого коэффициента, при вводе первого коэф. цикл работает, но при вводе второго - полученные числа заменяются новыми, это видно при прогоне пошагово. Не пойму куда вставить закомментированные операторы. Вот фрагмент кода, что неправильно? for i:=1 to l do begin for y:=g to r do begin kf:=mzp[y]/StrToFloat(SZEdit.Text); // Первоначальный массив делим на коэф. Sum:=Sum+kf; // end; koef:=sum; // //SZEdit.SetFocus; //SZEdit.Text:=''; g:=g+1; r:=r+1; Sum:=0; end. Ссылка на комментарий Поделиться на другие сайты Поделиться
Kuzmich Опубликовано 18 мая, 2004 Жалоба Поделиться Опубликовано 18 мая, 2004 Последний end у тебя в программе с точкой с запятой наверное, иначе вообще не скомпилируется... В целом вроде нормально, но ты уверен, что у тебя массива хватит на l раз? Попробуй делать вместо strtofloat strtoint... И еще: Тип элементов массива koef поставь longint, если у тебя integer... Ссылка на комментарий Поделиться на другие сайты Поделиться
dido Опубликовано 18 мая, 2004 Автор Жалоба Поделиться Опубликовано 18 мая, 2004 (изменено) Kuzmich Здесь не вся программа, а только фрагмент. Для примера дано целые числа т.е. integer. а в реальной программе - real. А вот хватит ли массива на 1 раз - неуверен. Изменено 18 мая, 2004 пользователем dido Ссылка на комментарий Поделиться на другие сайты Поделиться
Kuzmich Опубликовано 19 мая, 2004 Жалоба Поделиться Опубликовано 19 мая, 2004 (изменено) на 1 раз Не на один, а на l... У тебя же цикл от одного до l(L)... Ты бы мне всю программу замылил на kuzmich@list.ru... Изменено 19 мая, 2004 пользователем Kuzmich Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти