Тема: Помогите! Курсовая на Паскале.

Ответить в теме
Страница 1 из 2 1 2 ПоследняяПоследняя
Показано с 1 по 20 из 28
  1. Вверх #1
    Посетитель
    Адрес
    из ниоткуда
    Сообщений
    372
    Репутация
    13

    По умолчанию Помогите! Курсовая на Паскале.

    Помогите в срочнейшем порядке написать прогу на паскале!!!!!!!
    а то у мня последнее время полный ступор!
    ПРога должна
    в последовательности чисел находить наибольшую НЕубывающую последовательность и выводить ее.
    +алгоритм
    то что я творила выводит все неубывающие последовательности при этом еще и хамит мне

    ПОМОГИТЕ!!!! Это курсовая!


  2. Вверх #2
    Постоялец форума Аватар для Яр
    Пол
    Мужской
    Адрес
    Odessa.Ua
    Возраст
    37
    Сообщений
    2,915
    Репутация
    168
    в последовательности чисел находить наибольшую НЕубывающую последовательность
    что-бы это значило? :)
    ~ Motivation is what gets you started. Habit is what keeps you going.

  3. Вверх #3
    Посетитель
    Адрес
    из ниоткуда
    Сообщений
    372
    Репутация
    13
    объясняю
    прога допустим ввела числа:
    2 5 8 3 1 8 7 12 6 11 56 96 32
    наибольшая в неубывающая-6 11 56 96 32
    а еще есть: 2 5 8; 1 8; 7 12

    пунятненько?
    Блаженна жизнь, пока живешь без дум. (с) Софокл

  4. Вверх #4
    Постоялец форума Аватар для Яр
    Пол
    Мужской
    Адрес
    Odessa.Ua
    Возраст
    37
    Сообщений
    2,915
    Репутация
    168
    Не помню паскаль, давно было.

    на плюсах на скорую руку это можно реализовать вроде так:

    Код:
    #include <iostream>
    using namespace std;
    
    void main&#40;&#41;
    &#123;
    	const int N = 20;
    	int A&#91;N&#93; = &#123; 2, 5, 8, 3, 1, 8, 11, 12, 13, 20, 25, 7, 2, 6, 11, 56, 59, 60, 59, 55 &#125;;
    
    	struct pol
    	&#123;
    		int nach;
    		int kol;
    	&#125;;
    
    	pol first = &#123;0&#125;;
    	pol second = &#123;0&#125;;
    
    	bool f=false;
    
    	for &#40;int i=0; i<N; i++&#41;
    	&#123;
    		if &#40;A&#91;i&#93; <= A&#91;i+1&#93;&#41;
    		&#123;
    			if &#40;f==false&#41;
    			&#123;
    				first.nach=i;
    				f = true;
    				first.kol++;
    				continue;
    			&#125;
    			first.kol++;
    		&#125;
    		else
    		&#123;
    			if &#40;first.kol  > second.kol &#41;
    				second = first;	
    			f=false;
    			first.kol=0;
    		&#125;
    	&#125;
    
    	for &#40;int i=second.nach; i<second.nach+ second.kol+1 ; i++&#41;
    		cout<<A&#91;i&#93;<<" ";
    
    	cin.ignore&#40;1&#41;;
    
    &#125;
    выведет: 1 8 11 12 13 20 25
    ~ Motivation is what gets you started. Habit is what keeps you going.

  5. Вверх #5
    Постоялец форума
    Пол
    Мужской
    Сообщений
    1,480
    Репутация
    42
    1. Надо уточнить, т.к. "неубывающая" последовательность это не значит "возрастающая". Например [1,2,3] - это возраст, а [1,2,2,2,2,2,2,3] - неубывающая.

    2.
    Цитата Сообщение от Furious_Angel
    прога допустим ввела числа:
    2 5 8 3 1 8 7 12 6 11 56 96 32
    наибольшая в неубывающая-6 11 56 96 32
    а еще есть: 2 5 8; 1 8; 7 12
    Если я прав, то неубыв послед тут: 2 5 8, 1 8, 7 12, 6 11 56 96.

    3. Как отличать две неубыв послед: по кол-ву эл-тов, по макс эл-ту, по сумме. Т.е. что значит "наибольшая"?
    здесь завуалированный мат

  6. Вверх #6
    Постоялец форума
    Пол
    Мужской
    Сообщений
    1,480
    Репутация
    42
    Цитата Сообщение от Яр
    Не помню паскаль, давно было...
    Яр, не издевайся над ребенком. Просят же на паскале... ;)
    здесь завуалированный мат

  7. Вверх #7
    Постоялец форума
    Пол
    Мужской
    Сообщений
    1,480
    Репутация
    42
    Цитата Сообщение от Яр
    Не помню паскаль, давно было.

    на плюсах на скорую руку это можно реализовать вроде так:

    Код:
    #include <iostream>
    &#91;skip&#93;
    выведет: 1 8 11 12 13 20 25
    На паскале то же самое:
    Код:
    const
      N = 20;
      A &#58; array &#91;1..N&#93; of integer = &#40;2,5,8,3,1,8,11,12,13,20,25,7,2,6,11,56,59,60,59,55&#41;;
    type
      pol = record
        nach &#58; integer;
        kol &#58; integer;
      end;
    var
      first, second &#58; pol;
      i &#58; integer;
      f &#58; boolean;
    begin
      first.nach &#58;= 0;
      first.kol &#58;= 0;
      second.nach &#58;= 0;
      second.kol &#58;= 0;
      f &#58;= false;
      for i &#58;= 1 to N-1 do begin
        if A&#91;i&#93; <= A&#91;i+1&#93;
          then begin
            if not f then begin
              first.nach &#58;= i;
              f &#58;= true;
              inc&#40;first.kol&#41;;
              continue;
            end;
            inc&#40;first.kol&#41;;
          end
          else begin
            if first.kol > second.kol
              then second &#58;= first;
            f &#58;= false;
            first.kol &#58;= 0;
          end;
      end;
      for i &#58;= second.nach to second.nach+second.kol do
        Write&#40;A&#91;i&#93;,' '&#41;;
      WriteLn;
      ReadLn;
    end.
    выведет: 1 8 11 12 13 20 25
    здесь завуалированный мат

  8. Вверх #8
    Постоялец форума
    Пол
    Мужской
    Сообщений
    1,480
    Репутация
    42
    Теперь в ремиксе
    Код:
    const
      N = 20; &#123;Кол-во эл-тов в массиве&#125;
      MaxValue = 100; &#123;Наибольшее значение эл-та массива&#125;
    type
      TArray = array &#91;1..N&#93; of integer;
    var
      i, IndexMinElt, TempIME, Quantity, TempQ &#58; integer;
      VArray &#58; TArray;
    begin
      Randomize;
      for i &#58;= 1 to N do VArray&#91;i&#93; &#58;= Random&#40;MaxValue&#41;; &#123;Массив заполняется случайным образом&#125;
      IndexMinElt &#58;= 1; &#123;Индекс первого эл-та в возможной последовательности&#125;
      TempIME &#58;= 1; &#123;TempIndexMinElt&#125;
      Quantity &#58;= 0; &#123;Кол-во эл-тов в возможной последовательности&#125;
      TempQ &#58;= 0; &#123;TempQuatity&#125;
      for i &#58;= 1 to N-1 do
        if VArray&#91;i&#93; <= VArray&#91;i+1&#93;
          then inc&#40;TempQ&#41;
          else begin
            if TempQ > Quantity then begin
              IndexMinElt &#58;= TempIME;
              Quantity &#58;= TempQ;
            end;
            TempIME &#58;= i+1;
            TempQ &#58;= 0;
          end;
      Write&#40;'Array = &#91; '&#41;;
      for i &#58;= 1 to N do Write&#40;VArray&#91;i&#93;,' '&#41;;
      WriteLn&#40;'&#93;'&#41;;
      for i &#58;= IndexMinElt to IndexMinElt+Quantity do
        Write&#40;VArray&#91;i&#93;,' '&#41;;
    end.
    выводится например такое:
    Код:
    Array = &#91; 32 55 28 30 9 34 27 65 76 10 87 35 50 21 48 51 55 62 66 0 &#93;
    21 48 51 55 62 66
    здесь завуалированный мат

  9. Вверх #9
    Постоялец форума
    Пол
    Мужской
    Сообщений
    1,480
    Репутация
    42
    Furious_Angel, я в эту тему заглянул только потому, что хотел ее закрыть и удалить!
    Время у нас сейчас тяжелое, экология плохая, войны, цунами, выборы затянулись, тут еще тема с названием "ХЭЛП! УМОЛЯЮ!"... по которому совсем не понятно, что внутри. Если б она называлась "Нужно написать прогу на паскале" или как-то так... Представь себе, что продается книга за 100 $ с назвой "Как заработать миллион", а внутри написано "написать книгу с названием "Как заработать миллион" продать ее 10 000 дуракам по 100 $" ...
    Кароче, я думаю понятно, тему надо менять.
    СРОЧНО!!!
    :wink:
    здесь завуалированный мат

  10. Вверх #10
    Постоялец форума Аватар для Яр
    Пол
    Мужской
    Адрес
    Odessa.Ua
    Возраст
    37
    Сообщений
    2,915
    Репутация
    168
    mancurt, ;) круть.
    мне кажется с двумя структурами красивее, чем с четырьмя переменными :)

    а Курсовая какая-то несложная. :) Это какой курс\факультет, если не секрет? :)
    ~ Motivation is what gets you started. Habit is what keeps you going.

  11. Вверх #11
    Посетитель
    Адрес
    из ниоткуда
    Сообщений
    372
    Репутация
    13
    СПАСИБО ЗА ПОМОЩЬ
    курс пока что первый ФИТ Мечникова
    даже не совсем
    я в колледже учусь пока
    Просто реально нет времени. НАс завалили по полной программе
    по мне так я лучше б с графикой работала
    Блаженна жизнь, пока живешь без дум. (с) Софокл

  12. Вверх #12
    Посетитель
    Адрес
    из ниоткуда
    Сообщений
    372
    Репутация
    13
    Всем спасибки за помощь!
    Кстати на плюсах мне эт прога тож нужна тк в этом семестре придется учить именно плюсы
    Темку можно и поменять..))) Щас попробуем ченить интересненькое придумать
    Блаженна жизнь, пока живешь без дум. (с) Софокл

  13. Вверх #13
    Постоялец форума Аватар для Lord of rings
    Пол
    Мужской
    Адрес
    Одесса, типа украина...
    Сообщений
    2,377
    Репутация
    172
    ну и курсовые у вас - на 30 минут. Помню - я учился, у нас такие курсовые были - На Турбо С наваять тетрис или драйвер мышки или ещё чего...
    Per rectum ad astrum!

  14. Вверх #14
    Посетитель
    Адрес
    из ниоткуда
    Сообщений
    372
    Репутация
    13
    mancurt, кстати такой вариант проги не учитывает один случай
    массив- 12 14 45 3 19 0 0 2 1 17 87 55 72 34 22 67 80
    наибольшие неубывающие-12 14 45; 0 0 2; 1 17 87; 22 67 80
    Блаженна жизнь, пока живешь без дум. (с) Софокл

  15. Вверх #15
    Постоялец форума
    Пол
    Мужской
    Сообщений
    1,480
    Репутация
    42
    Цитата Сообщение от Furious_Angel
    mancurt, кстати такой вариант проги не учитывает один случай
    массив- 12 14 45 3 19 0 0 2 1 17 87 55 72 34 22 67 80
    наибольшие неубывающие-12 14 45; 0 0 2; 1 17 87; 22 67 80
    Я поэтому и задал уточняющий вопрос "что есть НАИБОЛЬШАЯ неубыв последовательность"? Т.е. как эту НАИБОЛЬШЕСТЬ вычислить : по кол-ву эл-тов, по общему знаменателю, по цвету?.. 8)
    здесь завуалированный мат

  16. Вверх #16
    Посетитель
    Адрес
    из ниоткуда
    Сообщений
    372
    Репутация
    13
    наибольшая по колву элементов
    но в этом случае как видишь их несколько
    Блаженна жизнь, пока живешь без дум. (с) Софокл

  17. Вверх #17
    Постоялец форума
    Пол
    Мужской
    Сообщений
    1,480
    Репутация
    42
    Цитата Сообщение от Furious_Angel
    наибольшая по колву элементов
    но в этом случае как видишь их несколько
    Что тогда делать? Выводить все такие последовательности или какую-то ососбенную?
    здесь завуалированный мат

  18. Вверх #18
    Посетитель
    Адрес
    из ниоткуда
    Сообщений
    372
    Репутация
    13
    все такие
    Блаженна жизнь, пока живешь без дум. (с) Софокл

  19. Вверх #19
    Постоялец форума
    Пол
    Мужской
    Сообщений
    1,480
    Репутация
    42
    Тогда встречный вопрос, что вы уже прошли по курсу Прогр на Паскале?
    Динамические массивы (ака списки n-направленные), реализации стэков...
    Это нужно для того, чтоб понять, на каком уровне надо делать прогу. Чтоб не получилось, что работа для первого курса по сложности похожа на диплом 8)
    здесь завуалированный мат

  20. Вверх #20
    Посетитель
    Адрес
    из ниоткуда
    Сообщений
    372
    Репутация
    13
    mancurt, на самом простом тк нам ваще ничегошеньки не объясняли.. паскаль знаю на школьном уровне, ну мож чуточку лучше. те полный примитив
    Блаженна жизнь, пока живешь без дум. (с) Софокл


Ответить в теме
Страница 1 из 2 1 2 ПоследняяПоследняя

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения