Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Задача за програмиране на pascal

Featured Replies

Трябва ми програма, която да подрежда числата във възходящ ред.Например емаме 3,1,7 и да се подредят 1,3,7.Ако можете помогнете

Числата какви да са? От нула нагоре? От -99 до +99? от -99.99 до +99.99? Има разлики...

Готова програма ли ти трябва или само насоки как да я напишеш?

Трябва ми програма, която да подрежда числата във възходящ ред.Например емаме 3,1,7 и да се подредят 1,3,7.Ако можете помогнете

http://pascalprogramming.byethost15.com/articles/sorting.php

  • Автор

Числата какви да са? От нула нагоре? От -99 до +99? от -99.99 до +99.99? Има разлики...

Готова програма ли ти трябва или само насоки как да я напишеш?

От 0 до 100

Готова ми трябва

Редактирано от radomir4y (преглед на промените)

Кое от всички възможни е това което ми трябва? Би ли ми казал името ???

Приятел, това са три различни метода за сортиране.

Избери си един.

Аз си избирам QuickSort.

  • Автор

решението на програмата е в рамките на 6,7 реда.Не мисля че е това пък и ми изписва грешка на програмата.Всичко е въведено както трябва.Помогнете

Редактирано от radomir4y (преглед на промените)

решението на програмата е в рамките на 6,7 реда.Не мисля че е това пък и ми изписва грешка на програмата.Всичко е въведено както трябва.Помогнете

Как да ти помогнем ?

Да ти я напишем наготово ли ?

Нали си написал нещо ? След като излиза някаква грешка, намери защо излиза и я оправи.

Казах ти, че QuickSort ще ти свърши работа.

Редактирано от Ken (преглед на промените)

  • Автор

ако може да ми я напишете на готово.само три пъти сме работили с паскал и задачата не е сложна.Решението е 6 реда но не знам как ще стане

Редактирано от radomir4y (преглед на промените)

ако може да ми я напишете на готово.само три пъти сме работили с паскал и задачата не е сложна.Решението е 6 реда но не знам как ще стане

Не разбирам, откъде ти знаеш, че решението е 6 реда, но карай да върви.

program Project;


var

  i: integer;

  nnn: array of integer;


procedure QSort(var numbers: array of Integer; left: Integer; right: Integer);

   var pivot, l_ptr, r_ptr: Integer;

begin

  l_ptr := left;

  r_ptr := right;

  pivot := numbers[left];

  while (left < right) do

  begin

    while ((numbers[right] >= pivot) and (left < right)) do

      right := right - 1;

    if (left <> right) then

    begin

      numbers[left] := numbers[right];

      left := left + 1;

    end;

    while ((numbers[left] <= pivot) and (left < right)) do

      left := left + 1;

    if (left <> right) then

    begin

      numbers[right] := numbers[left];

      right := right - 1;

    end;

  end;

  numbers[left] := pivot;

  pivot := left;

  left := l_ptr;

  right := r_ptr;

  if (left < pivot) then

    QSort(numbers, left, pivot - 1);

  if (right > pivot) then

    QSort(numbers, pivot + 1, right);

end;


procedure QuickSort(var numbers: array of Integer; size: Integer);

begin

  QSort(numbers, 0, size - 1);

end;


begin

  randomize;

  setlength(nnn, 6);

  for i := 0 to 5 do

  begin

    nnn[i] := integer(randом(100));

    writeln(nnn[i]);

  end;


  quicksort(nnn, 6);


  writeln;


  for i := 0 to 5 do

    writeln(nnn[i]);


  setlength(nnn, 0);


end.

  • Автор

procedure bubblesort(var x:data;n:integer);

var i,j:integer;t:byte;

begin

for i:=1 to n-1 do

for j:=1 to n-1 do

if x[j]>x[j+1] then

begin

t:=x[j];

x[j]:=x[j+1];

x[j+1]:=t;

end;

end;

Това не става ли

  • Автор

На мене ми трябва цялата програма която да е толкова дълга.Тови ми е домашното и само част от термините сме ги учили.Най-основните само

На мене ми трябва цялата програма която да е толкова дълга.Тови ми е домашното и само част от термините сме ги учили.Най-основните само

Защо не препишеш точно, какво са ти дали за домашно ?

Иначе ще има до март да се уточняваме.

  • Автор

Да се състави програма която да подрежда числа във възходящ ред.Това е условието.Задачата е с основните термими и не е дълга.Само 3 часа сме работили с програмата.

Редактирано от radomir4y (преглед на промените)

Да се състави програма която да подрежда числа във възходящ ред.Това е условието.Задачата е с основните термими и не е дълга.Само 3 часа сме работили с програмата.

program Project;


var

  i, j, t: integer;

  nnn: array[1..5] of integer;


begin

  writeln('Въведете 5 числа:');

  for i := 1 to 5 do

  begin

    write('Число ', i);

    readln(nnn[i]);

  end;


  for i := 1 to 5-1 do

    for j := 1 to 5-1 do

      if nnn[j] > nnn[j + 1] then

      begin

        t := nnn[j];

        nnn[j] := nnn[j + 1];

        nnn[j + 1] := t;

      end;


  writeln;


  for i := 1 to 5 do

    writeln(nnn[i]);


end.

  • Автор

Много ти благодаря :magnifier:

Само да питам какво е това nnn дето си го слагал на няколлко места ?

Много ти благодаря :magnifier:

Само да питам какво е това nnn дето си го слагал на няколлко места ?

Така съм кръстил масива с данните. Можеш да го смениш с нещо по-разбираемо, но на латиница да е.

  • Автор

Според теб IF какво е ?

Я върви да четеш и да пишеш на Pascal !

Задачата не се парви така.Питах госпожата.Ако им друг начис с условен алгоритъп моля да ми помогнете

Ken,не мога да разбера защо му се връзваш.Ясно си личи,че не си сяда на за**ика за 5 минути и да почете малко,а ти си седнал да му обясняваш и да му пишеш програмите.Твоя работа все пак.Аз такива ги игнорирам.Като дойде сесията и всички форуми се пълнят с теми от подобни хора,които ги мързи да седнат да почетат малко.

Добавете отговор

Можете да публикувате отговор сега и да се регистрирате по-късно. Ако имате регистрация, влезте в профила си за да публикувате от него.

Гост
Публикацията ви съдържа термини, които не допускаме! Моля, редактирайте съдържанието си и премахнете подчертаните думи по-долу. Ако замените букви от думата със звездички или друго, за да заобиколите това предупреждение, профилът ви ще бъде блокиран и наказан!
Напишете отговор в тази тема...

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    25%
    Дарени 252.69 EUR от нужните 1,000.00 EUR

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.