![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
Predator04 |
![]() ![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 3 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
Помогите кто может решить двезадачки
Задача №1 В одномерном массиве целых чисел определить количество нечетных элементов менших константы С. Задача №2 Дано двухмерный массив действительных чисел. Определить номер строки, в которой находиться максимальное число, а также номер столбца, в котором находиться минимальное число массива. Если индексы кратные, то заменить диагональные элементы массива единицей. Сообщение отредактировано: Predator04 - |
APAL |
![]()
Сообщение
#2
|
![]() Смотрю... ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: ![]() ![]() ![]() |
Задачки очень простые.
Попробуй сначала посмотреть здсь: http://forum.pascal.net.ru/index.php?showtopic=2694 Если не поможет - задавай здесь более конкретные вопросы, объясни что вызывает трудности. -------------------- |
Predator04 |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 3 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
Уменя есть вариант первой задачи но он не работает.
Код Program zada4a1; Const C = 5; Max = 10; Var a : array[0..Max] of Integer; i : Byte; Res : Integer; Procedure InputMass(Var a : array of integer); begin Randomize; WriteLn('Zadannii massiv ==>'); For i := 1 to Max do begin a[i] := Random(10); Write(a[i] : 3); end; end; Procedure Calculate(a : array of Integer; Var Res : Integer); begin for i := 1 to Max do if (a[i] mod 2) <> 0 then if a[i] < C then inc(Res); end; begin InputMass(a); Calculate(a,res); WriteLn('Kol-vo elementov ===> ',Res); end. |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Во-первых, почему именно процедура? С функцией не было бы проще?
Function Calculate(var a : array of Integer): Integer; А потом использовать вот так: begin Ну, и потом: ты описываешь массив A как массив с индексами [0 .. Max], а при его вводе в процедуре Input почему-то нулевой элемент игнорируешь (да и в Calculate тоже)... |
Romtek |
![]()
Сообщение
#5
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 303 Пол: Мужской Реальное имя: Роман Репутация: ![]() ![]() ![]() |
-------------------- Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
|
Romtek |
![]()
Сообщение
#6
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 303 Пол: Мужской Реальное имя: Роман Репутация: ![]() ![]() ![]() |
В целом, структура программы продумана хорошо, это уже радует. Ещё небольшой совет, но очень полезный: делай отступы в программе - так на порядок лучше следить за вложеными циклами, и, к тому же, увеличивается читабельность программы. ;)
-------------------- Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
|
Predator04 |
![]()
Сообщение
#7
|
Группа: Пользователи Сообщений: 3 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
Начало второй задачи.
Код var A array[1..x,1..y] of real Max,Min:Real; i,j,Str,Sto:integer Max:=A[1,1]; Min:=A[1,1]; Str:=1; Sto:=1; for i:=1 to x do for j:=1 to y do begin if A[i,j]>Max then begin Max:=A[i,j]; Str:=i end; if A[i,j]<Min then begin Min:=A[i,j]; Sto:=j end; end; Сообщение отредактировано: Predator04 - |
volvo |
![]()
Сообщение
#8
|
Гость ![]() |
Predator04, ты вообще читаешь, что тебе пишут?
Цитата(Romtek) Ещё небольшой совет, но очень полезный: делай отступы в программе Вот и делай отступы !!! Твои программы ОЧЕНЬ СЛОЖНО читать... |
AruNimotsi |
![]()
Сообщение
#9
|
![]() мозгоклюй ![]() ![]() ![]() Группа: Пользователи Сообщений: 204 Пол: Мужской Реальное имя: Юра Репутация: ![]() ![]() ![]() |
Код var A array[1..x,1..y] of real Max,Min:Real; i,j,Str,Sto:integer BEGIN // обычно бегин ставят в начале проги и поаккуратней с синтаксисом for i:=1 to x do // затем надо бы задать сам массив for j:=1 to y do readln(A[i,j]); Max:=A[1,1]; Min:=A[1,1]; Str:=1; Sto:=1; for i:=1 to x do for j:=1 to y do if A[i,j]>Max then begin Max:=A[i,j]; Str:=i; end; if A[i,j]<Min then begin Min:=A[i,j]; Sto:=j; end; END. дальше помочь не могу - некоректное условие если кратны - ЧЕМУ??? да и вообщемто я думаю остаток программы сможешь и сам дописать не исключаю ошибок и в моем тексте однако паскаля под рукой нету писал в нотепаде а сам не програмил лет шесть уж... -------------------- Иногда ответ ближе чем то место где мы его ищем..
|
volvo |
![]()
Сообщение
#10
|
Гость ![]() |
AruNimotsi, давай все-таки проверять программы перед тем, как постить!
Цитата(Правила раздела) 6. Проверяйте программы перед тем, как запостить их!!! У тебя же из-за синтаксиса уже на второй строке вылетит ошибка. Цитата некоректное условие если кратны - ЧЕМУ??? Все корректно, кратны друг другу. |
AruNimotsi |
![]()
Сообщение
#11
|
![]() мозгоклюй ![]() ![]() ![]() Группа: Пользователи Сообщений: 204 Пол: Мужской Реальное имя: Юра Репутация: ![]() ![]() ![]() |
Спасибо учту :D
замена диаганальных элементов еденицами:
;) -------------------- Иногда ответ ближе чем то место где мы его ищем..
|
volvo |
![]()
Сообщение
#12
|
Гость ![]() |
![]() А это зачем? if -1*(n-i)=j then A[i,j]:=1;? Для замены элементов побочной диагонали? Так оно не сработает, потому что n всегда больше i, а j отрицательным быть не может... Вот правильный вариант: for i:=1 to n do begin |
![]() ![]() |
![]() |
Текстовая версия | 1.09.2025 20:18 |