Процедуры и функции в паскале

Поделиться
HTML-код
  • Опубликовано: 5 ноя 2024

Комментарии • 33

  • @васяПортман-ж9и
    @васяПортман-ж9и 2 года назад +3

    Спасибо, но я чето не до конца врубаю различия процедуры и функции, зачем вообще процедуры нужны если функции все дела делают

    • @CebanArtiom
      @CebanArtiom Год назад

      Фнукция должна обязательно возвращать одно значение, а процедура - нет. Например, ты хочешь записать writeln('Hello') и writeln('World') в одну подпрграмму, чтобы при её вызове выполнялся этот код. Функцией ты это не сделаешь, потому что она будет должна вернуть какое-то значение, грубо говоря, переменную. А тут ты ничего не возвращаешь, просто хочешь что-то отобразить, следовательно, это можно сделать только процедурой.

  • @CodeBasilio
    @CodeBasilio  6 лет назад +2

    Критика и отзывы очень помогают в работе над уроками, поэтому налетаем и не стесняемся)

    • @Времявникуда-ш9ц
      @Времявникуда-ш9ц 5 лет назад

      Привет, помоги сделать через процедуры. Дана строка символов. Добавить в начало каждого слова символ количества символов предыдущего слова

  • @reygames7540
    @reygames7540 5 лет назад +1

    Ты ваще красава. Очень понятно объясняешь. Продолжай в том же духе

    • @CodeBasilio
      @CodeBasilio  5 лет назад

      Спасибо!) Такие комментарии очень вдохновляют)

  • @volerionmlbb1911
    @volerionmlbb1911 5 лет назад +1

    Класно малодец !!👏

  • @DeonisZy
    @DeonisZy 3 года назад +1

    спасибо

    • @CodeBasilio
      @CodeBasilio  3 года назад

      Всегда пожалуйста!)

  • @jettech4350
    @jettech4350 4 года назад

    Спасибо! Вроде понятно)

  • @krest.victor
    @krest.victor 5 лет назад +3

    будут еще видел ?
    курс для егэ например

    • @CodeBasilio
      @CodeBasilio  5 лет назад +2

      Да, к логопеду хожу, чтобы исправить речь, очень хочу делать качественный контент, планируется решение задач и уроки по веб-программированию (JavaScript, WordPress, 1С-Битрикс, PHP), потому что сейчас моя основная деятельность очень тесно связана с разработкой и продвижением веб-сайтов.

  • @matrix-u1n
    @matrix-u1n 6 лет назад +1

    Дан двумерный массив действительных чисел. Найти среднее арифметическое элементов данного массива и количество элементов > среднего арифметического. Ввод и вывод массива и нахождение суммы элементов массива оформить в виде соответствующих процедур.Я уже целый час сижу и не понимаю как это сделать с помощью процедуры.

    • @CodeBasilio
      @CodeBasilio  6 лет назад +1

      Думаю как-то так, нужно использовать передачу параметров по ссылке (не по значению), по-сути процедура это просто часть программы оформленная в отдельную структуру:
      program arr_procedure;
      uses
      System.SysUtils;
      type matrix = array[1..225, 1..225] of integer; // Создаем пользовательский тип данных
      var
      myArray: matrix;
      srednee: integer;
      procedure inputArray(var ar: matrix;var middle:integer); // Передача параметра по ССЫЛКЕ
      var i, j: integer; // Локальные переменные
      begin
      writeln('Введите двумерный массив 9 значений');
      for i := 1 to 3 do begin
      for j:= 1 to 3 do begin
      read(ar[i, j]); // Вводим массив
      middle := middle + ar[i, j]; // Складываем все значения
      end;
      writeln;
      end;
      middle := middle div 9; // Находим целую часть от деления на количество элементов массива
      end;
      procedure outputArray(ar: matrix); // Передача параметра по ЗНАЧЕНИЮ
      var i, j: integer; // Локальные переменные
      begin
      writeln('Вывод массива');
      for i := 1 to 3 do begin
      for j:= 1 to 3 do
      write(ar[i, j]); // Выводим массив
      writeln;
      end;
      end;
      procedure kolvo(ar: matrix; middle: integer);
      var i, j, count: integer; // Локальные переменные
      begin
      count := 0;
      for i := 1 to 3 do
      for j:= 1 to 3 do
      if (ar[i, j] > middle) then count := count + 1;
      writeln('Количество элементов больше среднего арифметического - ', count);
      end;
      begin
      srednee := 0;
      inputArray(myArray, srednee); // Процедура ввода массива и нахождение среднего
      //writeln('Среднее арифметическое: ',srednee);
      outputArray(myArray); // Процедура вывода массива
      kolvo(myArray, srednee); // Нахождение кол-ва элементов больше среднего арифметического
      readln;
      readln
      end.

    • @CodeBasilio
      @CodeBasilio  6 лет назад

      И ещё почитайте про пользовательские типы данных через type

    • @matrix-u1n
      @matrix-u1n 6 лет назад

      Спасибо

  • @volerionmlbb1911
    @volerionmlbb1911 5 лет назад

    У меня вопрес в проц и функ ты парематрам дал разные буквы например 'fn' ты написал 'n' в самой проге. Можно ли написать одно и тоже и в функ. Или проц. или по разному ?

    • @CodeBasilio
      @CodeBasilio  5 лет назад

      Разница в том, что n - это переменная, она используется в теле основной программы, fn- это параметр функции и он используется исключительно в теле функции, и за переделами данной функции его как бы не существует) Можно назвать параметр функции и переменную программы одинаково, но чтобы не путаться желательно дать им разные названия)

  • @urn4916
    @urn4916 6 лет назад

    Как понять возвращает значение? Пожалуйста объясните

    • @CodeBasilio
      @CodeBasilio  6 лет назад +6

      Это значит, что функцию можно использовать как переменную с оператором присвоения.
      Пример: объявлены переменные var a, b: integer;
      в теле программы им присвоены значения:
      a := 10; b:= 20;
      Также можно сделать следующее:
      a := b; // в таком случае "a" будет равно 20 (т.е. в переменной "a" будет храниться число 20)
      Теперь объявим функцию с именем "someFunc", например:
      function someFunc():integer; //указываем, что функция будет ВОЗВРАЩАТЬ тип integer
      begin
      someFunc := 10;
      end; // Написали тело функции, теперь она будет отдавать число 10, если какая-то переменная присвоит себе значение этой функции, например так:
      a := someFunc(); // переменная a теперь хранит значение 10, потому что функция после выполнения ВОЗВРАЩАЕТ (отдает) это число.

  • @Var-vy3cs
    @Var-vy3cs 5 лет назад

    0:57 - Опять Р не выговорили. Кстати, я также когда начинал исправлять дефект речи жестко выговаривал букву Р, что она как-то не органично звучала в речи.

    • @CodeBasilio
      @CodeBasilio  5 лет назад

      да, непросто это испРРравлять)

  • @УльянаСавочкина-в8ь

    Куда ты пропал? Собираешься выпускать новые видео или забросил канал окончательно?

    • @CodeBasilio
      @CodeBasilio  5 лет назад +2

      Ну после таких комментариев не хочется пропадать даже)

  • @azon9433
    @azon9433 5 лет назад +3

    Отличное видео )

  • @ВладиславКШкола
    @ВладиславКШкола 3 года назад

    очень тихий звук

  • @Желтыйгусь-ц2м
    @Желтыйгусь-ц2м 4 года назад

    Норм видос

    • @CodeBasilio
      @CodeBasilio  4 года назад

      Ну если бы я знал мало, то и видео делать было бы глупо я думаю

    • @Желтыйгусь-ц2м
      @Желтыйгусь-ц2м 4 года назад

      @@CodeBasilio прости. Норм всё. Не обижайся😉

    • @CodeBasilio
      @CodeBasilio  4 года назад

      @@Желтыйгусь-ц2м ладно, мир, а то уже ножи заточил))

  • @danilkhrom9323
    @danilkhrom9323 4 года назад +2

    Ррррррррр

    • @CodeBasilio
      @CodeBasilio  3 года назад

      На горе Арарат, рвет Варвара виноград)