Страница 1 из 2

Турбо паскаль, 1 задача, файл/записи/массивы

Добавлено: 19 янв 2009, 12:38
ge4r
Помогите пожалуйста.Задача на паскале.
Каждая запись файла – матрица 5*5. Убрать из файла одинаковые матрицы.

Re: Турбо паскаль, 1 задача, файл/записи/массивы

Добавлено: 20 янв 2009, 10:49
ge4r
не обязательно код,можно алгоритм...хотя лучше код)

Re: Турбо паскаль, 1 задача, файл/записи/массивы

Добавлено: 20 янв 2009, 15:45
Хыиуду
Создаем массив из матриц, считываем из файла матрицы в массив. Потом сверяем каждую пару матриц поэлементно: если хоть один элемент не совпадает - переходим к следующей, если все совпадают - удаляем одну из матриц.

Re: Турбо паскаль, 1 задача, файл/записи/массивы

Добавлено: 20 янв 2009, 16:44
ge4r
хм..спасибо

ишо вопрос:
есть отсортированый массив чисел,нужно посчитать сколько раз встречаюца 4 одинаковых цифры подряд
например :1 1 1 1 3 3 4 4 4 4 n=2

Добавлено: 20 янв 2009, 17:51
dr.Jekill
var i,n:byte;
a:array[1..50] of ineteger;
begin
k:=0;n:=0;
for i:=1 to 50 do
begin
if (a=a[i+1]) and (a[i+1]=a[i+2]) and (a[i+2]=a[i+3) then n:=n+1;
end;
end.

Разумеется сначала надо задать сам массив с клавиатуры или через random.
Если поможет оставьте отзыв. Это самое простое из того что можно предложить. До универсальности далеко! :)

Если что обращайтесь!

Re: Турбо паскаль, 1 задача, файл/записи/массивы

Добавлено: 20 янв 2009, 18:19
ge4r
в вашем коде не учтен случай
1 1 1 1 1 2 тут подряд 5 единиц,а нужно накидывать счетчик если только 4 подряд

мне кажется тут с вайлом надо,но написать корректно не получаеца

Re: Турбо паскаль, 1 задача, файл/записи/массивы

Добавлено: 20 янв 2009, 19:11
dr.Jekill
Можно попробовать что-то подобное:

n:=0;k:=0;
repeat
i:=i+1;
if array=array[i+1] then k:=k+1;
if k=4 then n:=n+1;
until i=номер последнего элемента в массиве;

Re: Турбо паскаль, 1 задача, файл/записи/массивы

Добавлено: 20 янв 2009, 19:47
ge4r
опять таки для теста
1 1 1 1 1 будет n=1,тк после каждого увелечения k будет проверяца равно ли k=4...)

Re: Турбо паскаль, 1 задача, файл/записи/массивы

Добавлено: 21 янв 2009, 15:08
Хыиуду
dr.Jekill, а потом к уйдет в заоблачные дали. Я уж не говорю, что на набор 1 1 2 2 3 3 4 4 ваш код тоже вернет 1. А всего-то надо было в самый первый код добавить проверку and a[i+4]<>a[i+3]

Re: Турбо паскаль, 1 задача, файл/записи/массивы

Добавлено: 21 янв 2009, 15:31
dr.Jekill
Мы не ищем легких путей! :)