Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Паскаль: определить номера столбцов, в которых нет четных элементов / 13 сообщений из 13, страница 1 из 1
15.06.2013, 00:05
    #38298430
alexander4321
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
Добрый день! Требуется определить номера столбцов, в которых нет четных элементов.
Составил следующую программу:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
program sortir;
uses crt;
Var
  x: Array[1..10,1..10] of shortint;
  i,j,n,m,k,kol: shortint;
BEGIN
clrscr;
Randomize;
Repeat
 Writeln('Vvedite razmery pryamougolnoi matritcy: ');
 Readln(n,m);
until n<>m;{proverka, chto matrica ne kvadratnaya}
Writeln('Matritca:');
For i:=1 to n do
begin
  For j:=1 to m do
  begin
    x[i,j]:=Random(51)-10;{diapazon ot -10 do 40}
    Write(x[i,j]:4); {vyvodim matricu}
  end;
  Writeln
end;
begin
    for j := 1 to m do
    begin
    kol := 0;
    for i := 1 to n do {cycl prosmotra stolbca, menyaetsya nomer stroki}
    if (x[i,j] mod 2 <> 0) then
    begin
    inc(kol);
    end;
    if (kol = n)  then writeln ('Stolbec: ', j);
    end;
end;
readln;
end.


Все прекрасно работает на матрицах с количеством столбцов меньше 10. Количество строк не имеет смысла задавать большим, т.к. в таком случае чаще всего в каждом из столбцов будет присутствовать хотя бы один четный элемент.
Так вот, если задать матрицу 3(строки)х8(столбцов), то результат будет верный. А вот если задать матрицу 3 или 4(строки)х20(столбцов), то в первых 10 столбцах выдает верный результат, а вот дальше (заметил уже в 12-м столбце) может выдать номер столбца якобы со всеми нечетными элементами, но один из элементов может запросто оказаться четным. Пробовал тип элементов матрицы менять, не помогло. Не подскажете, в чем может быть дело? Спасибо!
...
Рейтинг: 0 / 0
15.06.2013, 00:19
    #38298439
Програмёр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
alexander4321,


Код: pascal
1.
x: Array[1..10,1..10] of shortint;



Надеюсь, когда стараетесь 3х20 делать, тут циферки хоть подправляете?

P.S. Не мне судить конечно, но если я прав в причине ошибки - ставлю под сомнение, что данный код писали Вы сами :)
...
Рейтинг: 0 / 0
15.06.2013, 02:49
    #38298509
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
Програмёрставлю под сомнение, что данный код писали Вы самиЕстественно, видел же, что ТС пишет не сам
Если уж проверка на "квадратность" есть, а на границы массива нет.

alexander4321Припоминаю, что индексы элементов в массиве нумеруются с нуля. Во всех примерах по переборке массивов встречал первым индексом единицу... Поэтому, сильно не ломая над этим голову, предполагаю, что нумерация индексов в созданном в моей программе массиве тоже начинается с единицы.Вот так, и никак иначе! "Предполагаю"...
...
Рейтинг: 0 / 0
15.06.2013, 19:42
    #38298693
alexander4321
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
Програмёр
Код: pascal
1.
x: Array[1..10,1..10] of shortint;



Надеюсь, когда стараетесь 3х20 делать, тут циферки хоть подправляете?
Действительно не подумал об этом. Спасибо!

Програмёр
P.S. Не мне судить конечно, но если я прав в причине ошибки - ставлю под сомнение, что данный код писали Вы сами :)

Особенно и не скрывал это: нашел примерно то, что нужно в интернете, также то, что есть в предыдущих лабораторных. Поковырял, внес изменения и т. д. Хочу сказать, что пришлось поэкспериментировать с кодом, чтобы работало. Если бы я знал, то разве спрашивал бы? А, если не знаю, то нет ничего странного, что пытаюсь найти подходящий код и подогнать его под то, что нужно.
...
Рейтинг: 0 / 0
15.06.2013, 19:45
    #38298695
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
alexander4321пытаюсь найти подходящий код
а если не искать, а написать?
...
Рейтинг: 0 / 0
15.06.2013, 21:31
    #38298746
Програмёр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
Оффтоп, прошу извинить :) .

alexander4321Составил следующую программу
alexander4321Особенно и не скрывал это

Скрывали )). Не скрывали бы - написали: "Нашёл код, постарался переписать... не получилось. Подскажите пожалуйста, что надо сделать"... ну и в том роде.
...
Рейтинг: 0 / 0
15.06.2013, 22:35
    #38298779
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
ОффИзопропилalexander4321пытаюсь найти подходящий код

а если не искать, а написать? Всё уже написано до нас (с)
...
Рейтинг: 0 / 0
16.06.2013, 00:32
    #38298826
alexander4321
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
Програмёр,

Думаю пора заканчивать играть в поймал или не поймал. Вы же сами привели мою цитату, что я составил программу. Именно так и было на самом деле: открыл уже готовую программу, которая была у меня в одной из лабораторных, и нашел еще одну в интернете. Если бы скачанная в интернете программа меня устроила, то я бы ничего не менял в ней, а вставил бы ее в лабораторную. Вместо этого я сидел и из двух программ составлял одну: в одной мне понравился вывод матрицы, а в другой был нужный поиск необходимых данных. Более того поначалу особенно не получался результат, пришлось поэкспериментировать. Тот вариант, который в итоге получился, меня устраивает. К тому же препод вряд ли стал бы на защите вводить большие матрицы (в случае, если бы я вчера не задал вопрос здесь по этой теме). За подсказку о том, что количество элементов матрицы не должно превышать 10 еще раз спасибо! Даже не спорю, что не видел этот момент в программе, потому что сдул с чужой программы вывод матрицы.
Кстати, по поводу скопированного чужого кода... Очень сильно сомневаюсь, что можно почитать правила синтаксиса и потом руководствуясь ими писать код. Уверен, что каждый вначале просто повторяет "чужие" конструкции языка, пока они настолько не отложатся в голове, что сможет уже как будто их из головы придумывать. Вспомните хотя бы избитую программу с выводом текста "Hello, world". Очень хорошо было сказано, что до нас все придумано. Извиняюсь, если резковато, но не понимаю проблемы переделки чужого кода.
...
Рейтинг: 0 / 0
16.06.2013, 01:31
    #38298845
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
alexander4321,

Хорошо, что мы здесь такие телепаты, - сразу видим, что вы перекраиваете чужой код.
И вам всё же помогают, а не отправили прямиком в ту тему . Так что обижаться, по сути, не на что...
Мы же понимаем, что вы учитесь, и, возможно, не на программиста (да и, по большому счету, вполне можете не входить в те 3-5%, кто действительно сразу вникает в парадигму).
Просто, если вы сами код не пишете - то следуйте советам, которые вам дают (и о которых вы же сами просили!) буквально, не пытаясь "прилепить собственные рюшечки" - надо всегда помнить о том самом "первом же залетевшем дятле". Или уж просите сразу "сделать всё за вас"
...
Рейтинг: 0 / 0
16.06.2013, 02:24
    #38298857
alexander4321
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
AndreTM Так что обижаться, по сути, не на что...
Абсолютно согласен. Еще раз извиняюсь, если что-то прозвучало резковато: на самом деле что думаю, то и написал. За помощь очень благодарен. По поводу ошибок в коде: теперь так и буду писать, что ковыряю чужой код и что-то не работает.
...
Рейтинг: 0 / 0
16.06.2013, 09:57
    #38298884
Програмёр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
alexander4321AndreTM Так что обижаться, по сути, не на что...
Абсолютно согласен. Еще раз извиняюсь, если что-то прозвучало резковато: на самом деле что думаю, то и написал. За помощь очень благодарен. По поводу ошибок в коде: теперь так и буду писать, что ковыряю чужой код и что-то не работает.

Могу посоветовать другой метод обучения (с чего начинал сам), если конечно хотите научиться программировать, и если нравится. Как нам в школе говорят: "Давайте запишем - лучше запомнится". Любой код надо пытаться повторить по памяти. Это приводит к понимаю кода и к запоминанию конструкций. Забыли что дальше - подсмотрели... Закончили программу - проверили, если не запустилось - открыли исходник и сравнили где не так.

Не знаю как другие программисты (думаю так же), но я всё новое (в плане программирования) учу именно так, иначе знаю, что ни одной функции не запомню.

P.S. Если будете делать так как посоветовал, можете смело писать (ведь это будет правда:) )
alexander4321Составил следующую программу
Потому как вопросы данного уровня возникать не будут :)
...
Рейтинг: 0 / 0
16.06.2013, 10:45
    #38298900
alexander4321
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
Програмёр,

Спасибо за совет!
...
Рейтинг: 0 / 0
16.06.2013, 18:04
    #38299095
чччД
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Паскаль: определить номера столбцов, в которых нет четных элементов
alexander4321,

дополнительно:

1.
Код: pascal
1.
2.
3.
4.
if Odd() then
...
if Even() then 
...



2. Используй break: ни к чему проверять столбец до конца, если в нем уже попался хоть один четный элемент.
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Паскаль: определить номера столбцов, в которых нет четных элементов / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]