| BG Development · За реклама · За контакти |
Помощ Търсене Потребители Календар Правила |
| Здравей! ( Включване | Регистриране ) |
| Страници: (2) [1] 2 ( Първото ново мнение ) | ![]() ![]() ![]() |
| darksider1530 |
Публикувано на: 07-11-2016, 12:43
|
||
|
Име: Група: Потребител Ранг: Новопостъпил Мнения: 9 Регистриран на: 07.11.16 |
Даден е двумерен масив от с n реда и n стълба. Да се намери номера на реда, чиито елементи образуват аритметична прогресия. Това е задачка за Курсова работа. Студент съм 1ви курс и моля за малко помощ, тъй като нямахме достатъчно часове по Паскал за масиви. Благодаря предварително. ------------------------------------------------------------------------------------------------------------------- EDIT: до тука стигнах, не мога да измисля как да намеря аритметична прогресия ако има грешки казвайте:
Това мнение е било редактирано от darksider1530 на 07-11-2016, 16:38 |
||
| Golden Gega |
Публикувано на: 08-11-2016, 10:50
|
![]() Име: Група: Потребител Ранг: Почетен член Мнения: 2189 Регистриран на: 04.06.10 |
Аритметична прогресия е когато имаш редица елементи:
а1, а2, а3 ... aN с условието a2 = a1 + x, a3 = a2 + x и т.н. или казано по-друг начин: a2 - a1 = a3 - a2 = a4 - a3 = ... = aN - aN-1 В случая провераката би била нещо подобно: for i := 1 to 30 begin f := true; for j := 3 to 30 do if ((matrix[i, j - 1] - matrix[i, j - 2]) <> (matrix[i, j] - matrix[i, j - 1])) then f := false; if f then writeln('Red ', j, ' e aritmetichna progresia'); end; |
| darksider1530 |
Публикувано на: 08-11-2016, 11:03
|
|
Име: Група: Потребител Ранг: Новопостъпил Мнения: 9 Регистриран на: 07.11.16 |
Благодаря много. Аз знам аритметична прогресия но не бях сигурен как да я въведа в Паскал. А по това дето съм го писал има ли някакви грешки?
------------------------------ Edit: Пробвах варианта. изкарва ми че всички редове от 1 до 30 са прогресии дори когато са въведена матрица 5 на 3 Това мнение е било редактирано от darksider1530 на 08-11-2016, 15:41 |
| Golden Gega |
Публикувано на: 08-11-2016, 16:43
|
||||
![]() Име: Група: Потребител Ранг: Почетен член Мнения: 2189 Регистриран на: 04.06.10 |
Първо ме съмнявя да си пробвал точно кода дето си написал, тук ще даде грешка ;-)
Второ, дори да си го оправил матрица 5х3 не можеш да вкараш:
тия два цикъла правят всяка матрица да е с еднакъв брой колони и редове. Трето, в моя кода циклите не трябва да са от 1 до 30, а от 1 до n и съответно от 1 до другата променлива. Сложи да видим с кой код си пробвал и каква матрица си вкарал. Ако си вкарал ред 1, 1, 1 например той също се води прогресия с d = 0 |
||||
| darksider1530 |
Публикувано на: 09-11-2016, 16:08
|
||
|
Име: Група: Потребител Ранг: Новопостъпил Мнения: 9 Регистриран на: 07.11.16 |
ето го кода. нещо не мога да го оправя. |
||
| Golden Gega |
Публикувано на: 10-11-2016, 16:45
|
![]() Име: Група: Потребител Ранг: Почетен член Мнения: 2189 Регистриран на: 04.06.10 |
Имаш един излишен "end" под "f := true"
|
| darksider1530 |
Публикувано на: 11-11-2016, 13:00
|
|
Име: Група: Потребител Ранг: Новопостъпил Мнения: 9 Регистриран на: 07.11.16 |
|
| Golden Gega |
Публикувано на: 11-11-2016, 15:38
|
||
![]() Име: Група: Потребител Ранг: Почетен член Мнения: 2189 Регистриран на: 04.06.10 |
Имам една забележка дето хич не си обърнал внимание
|
||
| darksider1530 |
Публикувано на: 11-11-2016, 16:58
|
|
Име: Група: Потребител Ранг: Новопостъпил Мнения: 9 Регистриран на: 07.11.16 |
тоест едното да го махна? Сори че малко така ама съм начинаещ. уча се :Д
|
| miron |
Публикувано на: 11-11-2016, 20:56
|
|
Име: Мирослав Николов Група: Потребител Ранг: Старо куче Мнения: 748 Регистриран на: 26.04.05 |
Ако и двата цикъла са до n, ще можеш да въвеждаш само матрици с еднаква размерност (2*2, 3*3, 4*4 ...). Ако искаш да въведеш матрица 3*5 - трябва да промениш циклите.
|
Страници: (2) [1] 2 |
![]() ![]() ![]() |