Резултати от 1 до 3 от общо 3

Въпрос за Паскал

Сподели във Facebook Сподели в Twitter Изпрати на Email Сподели в LinkedIn
  1. Junior Member
    Тук е от
    Nov 2004
    Мнения
    100
    #1

    Въпрос за Паскал

    Имам следната задача: три масива - съответната подпрограма да намира средното аритметично на всички елементи над главния диагонал. Ето и мойто решение:

    for i:=1 to y do
    for j:=1 to y do
    if (i<j) then......

    Интересува ме дали ако беше ПОД главния диагонал щеше да изглежда така " if (i>j) then"

    Един приятел реши задачата така

    for i := 1 to y - 1 do
    for j := i + 1 to y do

    но не мога да разбера това решение, може ли някой да ми го поясни ?

    П.С Описал съм само главната програма от задачата за да не ви запълвам с излишна информация. Ако нещо не е ясно кажете ще я опиша по-подробно.
    Приемам съвети.

  2.  
     
  3. Member Аватара на shanto
    Тук е от
    Feb 2008
    Мнения
    621
    #2

    Re:Въпрос за Паскал

    Интересува ме дали ако беше ПОД главния диагонал щеше да изглежда така " if (i>j) then"
    Да може да ползваш тази проверка.
    но не мога да разбера това решение, може ли някой да ми го поясни ?
    Представи си , че имаш масив A [4,4] ->http://darkmentor.hit.bg/mas_obh.jpg , където :
    1.цифрите в клетките са индексите на елементите на масива;
    2.червените цифри са индексите на елем. от главния диагонал;
    2.сините цифри са индексите на елементите над главния диагонал;
    Намаляването на y с 1 ("y-1") в първия цикъл и увеличаването на началната стойност на цикъла със 1 ("i+1") във втория цикъл се прави с цел да се избегнат елементите по главния диагонал (червените числа)- те не са ни необходими.

    При изпълнение на циклите по неговия алгоритъм ще се получи следното обхождане:
    стъпка 1 - i=1 , j=2..5 -> това са следните елементи [1,2],[1,3],[1,4],[1,5]
    стъпка 2 - i=2 , j=3..5 -> това са следните елементи [2,3],[2,4],[2,5]
    стъпка 3 - i=3 , j=4..5 -> това са следните елементи [3,4],[3,5]
    стъпка 4 - i=4 , j=5 -> това са следните елементи [4,5]

    Твоят алгоритъм обхожда целия масив (числата оцветени с черен,червен и син цвят), независимо, че трябва да намери средноаритметичното само на елементите над главния диагонал (числата със син цвят).
    Неговият алгоритъм обхожда само елентите разположени над главния диагонал (числата оцветени със син цвят).
    Извод:
    1.И двата алгоритъма са верни.
    2.Неговият алгоритъм е по-добър, защото извършва много по-малко работа за постигане на крайният резултат (респективно заема много по-малък ресурс на КС - процесор,памет ОС и т.н.), което е едно от основните изисквания при програмиране.
    3.Неговият алгоритъм показва по-интелигентно решаване на поставената задача.
    4.Неговият алгоритъм е изпълнил по-добре условието за опростеност на алгоритъма - избягва проверката с условния оператор IF .. Then ..Else, т.е. ЕДНА УСЛОВНА СТРУКТУРА ПО–МАЛКО!.

  4. Junior Member
    Тук е от
    Nov 2004
    Мнения
    100
    #3

    Re:Въпрос за Паскал

    Благодаря ти Много !

Сподели във Facebook Сподели в Google Plus Сподели в Twitter Изпрати на Email Сподели в LinkedIn

Подобни теми

  1. Помощ на Паскал
    От LiLiLiTa във форум Програмиране
    Отговори: 9
    Последно: 09-08-09, 22:56
  2. Паскал къде бъркам
    От xzone във форум Програмиране
    Отговори: 4
    Последно: 23-11-08, 20:01
  3. Паскал: Интересна задача
    От xzone във форум Програмиране
    Отговори: 13
    Последно: 16-10-08, 16:28
  4. паскал или джава
    От sf7878 във форум Програмиране
    Отговори: 5
    Последно: 01-05-08, 06:58
  5. Паскал?
    От heat_ във форум Програмиране
    Отговори: 2
    Последно: 25-07-06, 11:09

SetCombG.com
SetCombG.com е портален сайт и Форум за битова техника, телевизори, климатици, лаптопи и смартфони, създаден през 1999 година.
Заедно сме над 20 години!
Следвай ни
Горе