Помощь - Поиск - Пользователи - Календарь
Полная версия: Массивы
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
LehaGrishin
В одномерном массиве X i (i = 1…5) найти количество элементов с нечетными индексами, оформить в виде процедуры. В основной программе организовать ввод и вывод массива, и вывод количества.
Помогите, пожалуйста
Федосеев Павел
Покажи, что уже готово. На чём остановился.
Я часто встречаюсь с тем, что люди поначалу теряются, но всё же выполняют работу самостоятельно, а мне остаётся лишь немного подсказывать.
LehaGrishin
Цитата
uses crt;
var a:array[1..5] of integer;
i:integer;
k:integer;

begin
clrscr;
k := (Length(a) DIV 2) + (Length(a) MOD 2);
writeln(k);
end
end.
Федосеев Павел
Да... Слегка запущено. Смотри в FAQ статью 1статью 2.

Там образцы ввода/вывода массивов. И образцы подсчёта (или поиска) элементов в массиве по произвольному условию (но это ты уже выполнил - почти - нужно в виде процедуры - и не length, а high(a) и low(a)).
function CountOddIndex( const a: TArray): integer;
var
i, c: integer;
begin
c := 0;
for i := low(a) to high(a) do
if odd(i) then
inc( c );
CountOddIndex := c;
end;

Ну или как у тебя - по формуле.
Гость
Цитата
const N = 5;

procedure CountOdddIndex(var Count : integer);
var i : integer;
begin
Count := (N+1) div 2;
end;

var
A :array[1..N] of integer;
Cnt : integer;
begin
CountOdddIndex( cnt );
WriteLn('В массиве ровно ', cnt, ' элемента(-ов) с нечётными индексами.')
end.

Скажите, а вот так вот правильно?
Федосеев Павел
Да, правильно, но недостаточно, т.к. в условии
Цитата
В основной программе организовать ввод и вывод массива, и вывод количества.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.