Вопрос № 144798: Здраствуйте,уважаемые эксперты помогите решить задачки на одномерные массивы!Буду очень благодарна!:) №1 Известны данные о количестве осадков,выпавших за каждый день февраля.Верно ли,что по четным числам выпало больше осадков,чем по нечетным? №...
Вопрос № 144.798
Здраствуйте,уважаемые эксперты помогите решить задачки на одномерные массивы!Буду очень благодарна!:) №1 Известны данные о количестве осадков,выпавших за каждый день февраля.Верно ли,что по четным числам выпало больше осадков,чем по нечетным? №2 Известно число жителей,проживающих в каждом доме улицы.Нумерация домов проведена подряд.Дома с четными номерами расположены на одной стороне улицы,с нечетными на другой.На какой стороне улицы проживает больше жителей? Если можно,напишите их с объяснениями,а
то я их толком не пониманию.
Отправлен: 23.09.2008, 20:12
Вопрос задала: Evela (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Зенченко Константин Николаевич
Здравствуйте, Evela!
Задачи почти одинаковые, поэтому привожу только первую. Попробуйте сделать вторую по аналогии. Если не получится, обращайтесь в мини-форум. Удачи!
Приложение:
--------- Итерация от человека, рекурсия — от Бога (Питер Дойч)
Ответ отправил: Зенченко Константин Николаевич (статус: Профессор) Украина, Киев Тел.: +380979536619 Адрес: Украина г.Киев ---- Ответ отправлен: 23.09.2008, 20:31 Оценка за ответ: 5 Комментарий оценки: Спасибо огромное!:)
Отвечает: Абельхарисов Руслан/Marked One
Здравствуйте, Evela! №1
Код:
const {Кол-во дней в месяце} N=28;
Var {Данные об осадках} A: array [1..N] of integer; {SumC-сумма осадков по четным числам, SumN-нечетные, i- для цикла} SumC, SumN, i: integer;
begin {Обнуляем суммы} sumC:=0;
SumN:=0; {Включаем генератор случайных чисел} randomize; {Заполняем весь массив случайными числами от 1 до 99} for i:=1 to N do begin A[i]:=random(100); Write(A[i], ' '); {Если число четное, то прибавляем к SumC иначе к SumN} if Odd(i) then SumN:=SumN + a[i] else SumC:=SumC + a[i]; end; {Проверяем условие} if SumC > SumN then WriteLn(
'Верно') else WriteLn('Неверно'); readln; end.
Работать с массивами очень просто. Чтобы создать массив в разделе Var добавьте следующие строчки:
Код:
var Arr: array [1..100] of integer;
Здесь мы объявили
массив Arr длиной 100 элементов. Элементы в нашем массиве нумеруются с 1 до 100, их тип Integer. Почти так же можно создать массив строк:
Код:
var StrArr: array [1..5] of string;
Здесь мы создали массив из
5 строк. Можно создать массив в котором элементы нумеруются с -100 до 52:
Код:
var Arr: array [-100..52] of integer;
Массивы можно создавать любых типов, тип указывается после ключевого слова of. Обращаться к элементам массива тоже очень просто:
Код:
var //Создали массив типа integer Arr: array [-10..10] of integer; begin //Элементу с индексом -10 присвоили 100 Arr[-10]:=100; //Вывели -10 элемент WriteLn(Arr[-10]); //5 элементу присвоили разность 400 и -10
элемента массива Arr[5]:=400 - Arr[-10]; end.
Вернемся к нашей задачи. Сначала мы создаем массив из 28 элементов с типом integer. Объявляем переменные для хранения сумм осадков. Потом заполняем массив случайными числами с помощью функции random. Четность проверяем с помощью функции Odd. Она возвращает true если число нечетное, иначе false.
Удачи!!!
Ответ отправил: Абельхарисов Руслан/Marked One (статус: Студент)
Ответ отправлен: 23.09.2008, 20:52 Оценка за ответ: 5 Комментарий оценки: Спасибо за помощь!:)