There is no such thing as a stupid question, until you ask it
Всем доброго вечера!
Передо мной стоит такая задача: составить программу, которая считает сумму элементов строки квадратной матрицы и сравнивает ее с другими суммами. Если попадаются две равные - вывести сумму и номера строк, у которых она равна. Условие: никаких доп. массивов для хранения сумм. В общем-то, из-за этого условия мне пришлось все делать через циклы, но у меня такое ощущение, что я в них напортачила (даже почти уверена).
Вот что получилось у меня:

Мне кажется, что там надо либо все впихнуть в еще один цикл, либо ларчик просто открывался, а я в упор не вижу. Заранее спасибо за помощь!

+

Задание со строками. Дан текст. Надо вывести количество предложений, в которых слов больше 3. Вроде простая задача, но у меня в половине случаев счетчик немного "промахивается" и выдает неправильный результат. А в половине других - правильный. Понять не могу, где у меня огрешность, она ведь мелкая какая-нибудь по закону Мёрфи.


P.S. У меня сегодня день кода, так что не ругайтесь, если я тут тем напложу C:

@темы: Pascal

Комментарии
16.01.2013 в 23:40

Птичка шизокрылая, Борец С Режимом Дня
Пробел после точки.
Строка Ааа._Ббб, второе предложение будет - _Ббб, первый прогон вхолостую обсчитает начальный пробел
Для чистки от паразитных пробелов в начале и конце слова есть функция trim (s)
16.01.2013 в 23:58

There is no such thing as a stupid question, until you ask it
Пробел после точки.
Черт возьми, да! @__@ Спасибо вам большое, я уже мозг сломала, где он лишние слова-то насчитывает.
17.01.2013 в 00:18

There is no such thing as a stupid question, until you ask it
...Путем правки получился такой кусочек (все остальное по-старому):

Однако счетчик все равно сбоит. Например, если ввести текст такого рода: "Слово слово слово. Слово слово слово. Слово слово слово слово.", то счетчик должен показывать 1, но он выдает... ноль. Но есть, если бы проблема осталась та же - пробелы перед предложением - то он бы выдавал больший результат, но не меньший :nope:
17.01.2013 в 00:23

Птичка шизокрылая, Борец С Режимом Дня
о сразу хочется написать, что в дельфе отступы после begin-end ставят по-другому:
for i:=0 to n-1 do
begin
--blah-blah-blah
--blah-blah-blah
end
А нумерацию делать от 0 до n-1, очень полезная привычка, на самом деле


Сейчас гляну, что там не так. Сейчас с первым.
Да, там нужна тройная вложенность: сначала фиксируем ряд (1), потом проходим по остальным рядам(2), для каждого из которых - сумма (3). Еще один момент: вот эти 11 элементов с ограничением - вообще-то бяка. Или у нас жестко заданы границы - тогда n вводить не нужно, либо делаем массив динамическим. Опять же, для учебных задачек оно ок, но в целом стоит иметь в виду.

читать дальше
17.01.2013 в 00:29

Птичка шизокрылая, Борец С Режимом Дня
Да, внутренний цикл я тоже слегка поменяла.
читать дальше
17.01.2013 в 00:34

There is no such thing as a stupid question, until you ask it
вообще-то бяка
Да я в курсе C: Но указано n<11 - что ж, я за язык не тянула, буду это использовать.

Можно я вас горячо обниму?
Кусок с if rows=i then - хитро, очень хитро. Я в восхищении.
17.01.2013 в 00:40

Птичка шизокрылая, Борец С Режимом Дня