Использование рекурсивных процедур
Найбільш загальними завданнями психології у третьому тисячолітті є: вивчення впливу суспільної дійсності на психіку людини та психологію різних людських спільнот. У цьому аспекті здійснюється психологічний аналіз діяльності, поведінки і вчинків людини, визначаються вимоги суспільної дійсності до її психіки тощо; розкриття психологічних закономірностей формування в людини готовності до діяльності та розроблення психологічних шляхів підвищення її ефективності; виявлення психологічних умов підвищення ефективності виховання громадян, механізмів розвитку та вияву мотивів їхньої поведінки; здійснення психологічного аналізу системи «людина -техніка», виявлення можливості людей щодо їхнього використання, проведення психологічного аналізу аварій, катастроф тощо; забезпечення саморегулювання людиною психічних станів, які виникають у небезпечних та інших (стресових) ситуаціях, а також визначення умов і засобів боротьби зі страхом та панікою, запобігання іншим психічним станам, які знижують ефективність діяльності, і їхнє подолання; підвищення ефективності управління в різних сферах суспільства, розкриття впливу особистості керівника та його стилю керівництва на психологію колективу, на його суспільну й виховну функції тощо; оптимізація всіх аспектів праці та життя людини в різних умовах; виявлення умов і чинників ефективної професіоналізації кожної людини з урахуванням реальних потреб і можливостей суспільства; психолого-педагогічне забезпечення розв´язання завдань освіти молодих; боротьба з тероризмом і злочинністю, бездуховністю, наркоманією, алкоголізмом тощо; підвищення ролі психології в підтриманні правопорядку, організованості й дисципліни, психічного здоров´я і добробуту громадян; дослідження психолого-педагогічних проблем сучасного стилю практичної діяльності кадрів, вироблення і впровадження рекомендацій з оволодіння продуктивними технологіями ефективної праці та життя; створення необхідних передумов і комфортних соціально-психологічних умов для продуктивної життєдіяльності, розкриття творчого потенціалу суб´єктів праці та життя; розвиток психології як інтегративної сфери людинознавства в сучасному суспільстві. Важливими проблемами, які вимагають у цей час поглиблених психологічних досліджень, також є: обґрунтування сучасної психолого-педагогічної концепції підготовки професіоналів і реформування соціальної структури; розроблення методології психології; синтезування концепції вивчення, формування і розвитку соціальних суб´єктів, конкретної людини, колективу; створення сучасних теорій психології професійної праці; теоретичне і практичне обґрунтування питань зміцнення правопорядку, дисципліни; психологічний відбір, підготовка й адаптація до різних умов життєдіяльності; питання впровадження прикладної психології та ефективного акмеологічного супроводу праці, життя тощо. Розв´язання всіх зазначених завдань є вагомою передумовою успішного реформування суспільства і забезпечення його прогресивного розвитку. Тут важливо використовувати продуктивний вітчизняний досвід, спиратися на найкращі закордонні зразки і досягнення сучасної психології і педагогіки, вишукувати і впроваджувати інноваційні підходи й рішення. При цьому потрібно позбуватися малопродуктивної практики, яка відіграє роль блокатора в оптимізації психолого-педагогічного процесу. Отже, психологія як наука вивчає факти, закономірності, механізми психічного життя людей і тварин. Взаємовідносини живих істот з навколишнім світом реалізуються за допомогою психіки як складної сигнальної системи, до якої входять почуття та образи, настанови й мотиви, процеси спілкування та ідеальні предметні дії, емоційні стани та інші психічні властивості. Різноманітні психічні якості утворюють систему регуляції, що надає поведінці й діяльності стійкості та ефективності, У людини ця система виступає як психічний склад особистості, який утворюється її комунікативними здібностями, ціннісними орієнтаціями, рисами характеру, самосвідомістю, інтелектуальними здібностей, темпераментом тощо. 5. Зв’язок психології з іншими науками. Основні галузі психології Психологія пов’язана з такими науками: 1) філософією – питання психології тривалий час вивчались у межах філософії; сьогодні є наукові проблеми, які розглядаються як з позиції психології, так і філософії (поняття особистісного сенсу, мети життя, світогляд, моральні цінності та ін.); 2) соціологією – спостерігається взаємна підтримка на рівні методології. Так, соціологія запозичує із соціальної психології методи вивчення особистості й людських стосунків. Психологія використовує у своїх експериментальних дослідженнях прийоми збору наукової інформації, що є традиційно соціологічними (опитування, анкетування); відбувається взаємопроникнення теорій: так, розроблена переважно соціологами концепція соціального научіння є загальноприйнятою у соціальній та віковій психології; теорії особистості та малої групи, розроблені психологами, використовуються у соціології; спільно вирішуються проблеми (наприклад, взаємини між людьми, національна психологія, психологія економіки й політики держави, проблеми соціалізації й соціальних установок); 3) педагогікою – виховання й навчання дітей не може не враховувати психологічних особливостей особистості (однак, на відміну від психології, яка розвивалась у межах філософії, педагогіка формувалась із самого початку як самостійна наука; і нині між психологами й педагогами немає чіткого взаєморозуміння). На початку ХХ століття існувала й розвивалась комплексна наука про дітей, їх навчання і виховання – педологія, у ній співпрацювали педагоги, психологи, медики, фізіологи; існували наукові центри, де готували педологів, наукові лабораторії, у яких спеціалістами різних напрямів розроблялись проблеми дитинства; 4) історією – є приклади глибокого синтезу історії й психології у створенні загальної наукової теорії – теорія культурно-історичного розвитку вищих психічних функцій людини, розроблена Левом Семеновичем Виготським: у ній доведено, що головні історичні досягнення людства (мова, засоби праці) стали факторами, що спричинили прогрес у філогенетичному та онтогенетичному розвитку людей; у психології використовується історичний метод – для розуміння природи будь-якого психічного явища потрібно простежувати його розвиток (як на рівні людини, так і на рівні людства); 5) технічними науками – людина є безпосереднім учасником усіх технологічних і виробничих процесів, без її участі неможливо організувати виробничий процес; завдяки діяльності психологів створюються зразки техніки, які враховують психічні і фізіологічні можливості людини (інакше могли б бути створені технічні зразки, які ніколи б не змогла експлуатувати людина); 6) з медичними та біологічними науками – більшість психічних явищ (насамперед, психічних процесів) мають фізіологічну зумовленість, тому знання, отримані фізіологами й біологами, використовуються у психології, для кращого зрозуміння тих чи інших психічних явищ; сьогодні добре відомі факти психосоматичного й соматопсихічного взаємовпливу, психічний стан індивіда відображається на його фізіологічному стані, а в певних ситуаціях психічні особливості можуть сприяти розвитку того чи іншого захворювання, і навпаки, хронічне захворювання позначається на психічному стані хворого; враховуючи тісний зв’язок психічного й соматичного, у сучасній медицині активного розвитку набули методи психотерапевтичного впливу, які використовують “лікувальні властивості” слова. Таким чином, психологія тісно пов’язана з різними сферами науки й практики. Всюди, де задіяна людина, є місце психології. Тому з кожним роком психологія набуває все більшої популярності, поширення, а це призводить до виникнення різноманітних галузей психології. Галузі психології – сфери науково-психологічних досліджень та практичного застосування психологічних знань, що відносно самостійно розвиваються. Кожні 4-5 років з’являються нові галузі психології. Їх виникнення зумовлене впровадженням психології у всі сфери наукової і практичної діяльності, появою нових психологічних знань. Усі галузі психології можна розділити на дві групи: фундаментальні та прикладні. Фундаментальні (загальні) – базові, мають загальне значення для розуміння і пояснення різних психічних явищ, в тому числі поведінки людей, незалежно від того, якою діяльністю вони займаються. Це база, яка об’єднує усі галузі психологічної науки і є основою для їх розвитку. Тому їх об’єднують терміном “загальна психологія”. Прикладні (спеціальні) – галузі науки, досягнення яких використовуються на практиці. Вирішують конкретні завдання у межах свого напряму. У деяких випадках досягнення прикладних галузей може мати фундаментальний характер, це робить необхідним використання отриманого знання у всіх галузях і напрямах. Прикладні галузі психології: - педагогічна психологія – галузь психологічної науки, що вивчає психологічні проблеми навчання і виховання, досліджує питання цілеспрямованого формування пізнавальної діяльності й суспільно значущих якостей особистості, вивчає умови, які забезпечують оптимальний ефект навчання, питання врахування індивідуальних особливостей учня при побудові навчального процесу і взаємин вчителя та учня, а також взаємин всередині навчального колективу; - вікова психологія – вивчає закономірності етапів психічного розвитку й формування особистості від народження до старості; розділи вікової психології: психологія дитинства, психологія юності, психологія зрілого віку, геронтопсихологія; вивчає вікову динаміку психічних процесів; - диференціальна психологія – галузь психології, яка вивчає відмінності як між індивідами, так і між групами, а також причини й наслідки цих відмінностей; - соціальна психологія – вивчає закономірності поведінки і діяльності людей, зумовлені фактом їх включеності у групи, а також психологічні характеристики самих груп; - політична психологія – вивчає психологічні компоненти політичного життя і діяльності людей, їх настрої, думки, почуття, ціннісні орієнтації; - психологія мистецтва – галузь психологічної науки, предметом якої є властивості й стани особистості чи групи осіб, що зумовлюють усвідомлення й сприймання художніх цінностей, вплив цих цінностей на життєдіяльність окремої особистості в цілому; - медична психологія – вивчає психологічні аспекти гігієни, профілактики, діагностики, лікування, експертизи й реабілітації хворих; у її сферу входять питання, пов’язані з виникненням, розвитком і перебігом хвороби, впливом тих чи інших хвороб на психіку людини і, навпаки, впливом психіки на хворобу; - інженерна психологія – галузь психології, яка досліджує процеси і засоби взаємодії між людиною і машиною. Інші галузі психології: спортивна психологія, юридична психологія, авіаційна й космічна психологія, військова психологія, експериментальна психологія тощо. Запитання для самоконтролю 1. Дайте визначення психології як науки. 2. У чому полягає завдання психології як науки? 3. У чому полягає значення психології? 4. Поясніть, чим відрізняються наукові психологічні знання від життєвих? 5. Що вивчає психологія? 6. Як змінювався предмет вивчення психології як науки упродовж історії її становлення? 7. З яким роком та якою подією пов’язують становлення психології як самостійної науки? 8. В чому полягає важливість для нас психологічного знання та його структуру. 9. З якими науками пов’язана психологія, поясніть цей зв’язок? 10. Як ви розумієте поняття «галузь психології»? 11. Назвіть галузі психології, дайте їх коротку характеристику. Использование рекурсивных процедур Рекурсивные процедуры используют, в частности, для описания алгоритмов вычисления значений функций, которые задаются рекуррентными соотношениями, например: 1. вычисления факториала n! = F (n): F (0) = 1; F (n) = n · F (n - 1) 2. вычисления чисел Фибоначчи F (1) = F (2) = 1; F (n) = F (n - 1) + F (n - 2). Однако, следует отметить, что использование рекурсивных процедур связано с многократным входом во время выполнения программы в одно и то же блок без выхода из него. Количество рекурсивных входов называется уровнем рекурсии.
6. Одномерные массивы. Описание, способы задания элементов. Объявление одномерных массивов Описать одномерный массив можно несколькими способами:
Var имя массива: Array [тип индекса] of тип элементов;
Type имя типа = Array [тип индекса] of тип элементов;
Const имя массива: Array [тип индекса] of тип элементов = (список элементов);
Ввод данных в одномерный массив 1. Ввод массива с клавиатуры оператором Read. For i:=1 to n do Begin Writeln('введите элемент массива'); Read (A[ i ]); 2. Заполнение массива с помощью генератора случайных чисел Random на интервале (a,b): Randomize; For i:=1 to n do A[ i ]:= Random (b-a)+a; 3. Ввод массива в разделе констант (производится вместе с объявлением). Const N=5; A:=array [1..N] of integer (-8,0,4,1,3);
Вывод данных в одномерном массиве Вывод массива в Паскале осуществляется также поэлементно, в цикле, где параметром выступает индекс массива, принимая последовательно все значения от первого до последнего. Вывод в строку. A: array [1..10] of integer; i: integer; Begin For i:=1 to 10 do Write (a [ i ],' '); End Вывод в столбец. var A: array [1..10] of integer; i: integer; Begin For i:=1 to 10 do Writeln (a [ i ]); End Пример 1: Ввести 2 вектора, размерностью n, найти сумму этих векторов. Program summa; Var a, b, c: array [1..100] of integer; i, n: byte; Begin Write (‘введите размерность массивов:’); Readln(n); For i:=1 to n do Readln (a[i]); For i:=1 to n do Readln (b[i]); For i:=1 to n do C[i]:=a[i]+b[i]; For i:=1 to n do write (c[i],’ ‘); end.
7. Двумерные массивы. Описание, способы задания элементов. Массивы, положение элементов в которых описывается двумя индексами, называются двумерными. Их можно представить в виде прямоугольной таблицы или матрицы. Каждый элемент имеет свой номер, как у одномерных массивов, но сейчас номер уже состоит из двух чисел - номера строки, в которой находится элемент, и номера столбца. Таким образом, номер элемента определяется пересечением строки и столбца. Например, a12 - это элемент, стоящий в первой строке и во втором столбце. Существуют несколько способов объявления двумерного массива. Способ 1. В Паскале двумерный массив можно описать как одномерный, элементами которого являются одномерные массивы. Например, для матрицы А, приведённой выше: Const n = 2; m = 3; В данном случае переменная v объявлена как одномерный массив из трёх элементов вещественного типа. Переменная а описана как двумерный массив из двух строк, каждую из которых включено по три элемента. Способ 2. Описание массива А можно сократить, исключив определение типа omyarray в определении типа dmyarray: Const n = 2; m = 3; Способ 3. Ещё более краткое описание массива А можно получить, указывая имя массива и диапазоны изменения индексов для каждой размерности массива: Const n = 2; m = 3; Var a: dmyarray. Если указанный тип используется для определения одного массива в программе, то удобно объявление массива в разделе описания переменных: Var a: Array [1..n, 1..m] Of < тип элементов >. Рассмотренные выше методы решения задач обработки одномерных массивов могут применяться для обработки двумерных массивов. Поскольку положение элемента в двумерном массиве описывается двумя индексами [первый - номер строки, второй - номер столбца], программы большинства матричных задач строятся на основе вложенных циклов. Обычно внешний цикл работает по строкам матрицы, то есть с его помощью выбирается требуемая строка матрицы, а внутренний цикл - по столбцам матрицы, то есть здесь выбирается нужный элемент из выбранной уже строки. Пример 2: Program massiv; Const n = 3; m = 4; Type massiv = Array[1..n., 1..m] of integer; Var A: massiv; I,j:integer; Begin For i:=1 To n Do For j:=1 To m Do x[i,j]:=-25+Random(51); For i:=1 To n Do Begin For j:=1 To n Do Write(x[i,j]:5); Writeln; End; End.
8. Методы сортировки массивов. Сортировка массива методом пузырька - медленная, но если скорость не главное, можно применить и его. Алгоритм очень прост - если два соседних элемента расположены не по порядку, то меняем их местами. Так повторяем до тех пор, пока в очередном проходе не сделаем ни одного обмена, т.е. массив будет упорядоченным. Ниже текст процедуры, реализующей алгоритм сортировки методом пузырька (Arr - массив для сортировки с начальным индексом 0, n - размерность массива)
procedure SortPuz (var Arr: array of Integer; n: Integer); var i: Integer; Temp: Integer; Flag: Boolean; begin repeat Flag:= False; for i:= 0 to n - 1 do if Arr [i] > Arr [i + 1] then begin Temp:= Arr [i]; Arr [i]:= Arr [i + 1]; Arr [i + 1]:= Temp; Flag:= True; end; until Flag = False; end;
Сортировка методом нахождения минимального элемента Ещё один вариант сортировки, более быстрый, чем метод пузырька. Заключается он в следующем: при каждом просмотре массива находим минимальный элемент и меняем местами его с первым на первом проходе, со вторым - на втором и т.д. Не забудьте только, что первый элемент массива должен иметь индекс 0.
procedure SortMin (var Arr: array of Integer; n: Integer); var i, j: Integer; Min, Pos, Temp: Integer; begin for i:= 0 to n - 1 do begin Min:= Arr [i]; Pos:= i; for j:= i + 1 to n do if Arr [j] < Min then begin Min:= Arr [j]; Pos:= j; end; Temp:= Arr [i]; Arr [i]:= Arr [Pos]; Arr [Pos]:= Temp; end; end;
|