Главная страница
Навигация по странице:

Методичка по программированию. Программирование на алгоритмических языках Методические указания к лабораторным работам по курсу информатика Иваново 2004



Скачать 1.69 Mb.
Название Программирование на алгоритмических языках Методические указания к лабораторным работам по курсу информатика Иваново 2004
Анкор Методичка по программированию.doc
Дата 24.04.2017
Размер 1.69 Mb.
Формат файла doc
Имя файла Методичка по программированию.doc
Тип Методические указания
#2029
страница 2 из 4
1   2   3   4

B=45 F=0,12

  • E=2,5


  • A=36 F=0,12

    M=-1,83


    • A=3№ФункцияКоэффи-циенты7 A=5

    C=-0,18

    B=2,55


    Е=38 D=0,3

    C=2,6

    A=49 A=3

    B=3,4510 E=2,23


    • A=5№ФункцияКоэффи-циенты11 P=0,85

    Q=2,15

    1. A=612 B=1,57

    A=413 B=4,24

    A=414 A=6

  • P=-0,67


    • E=1,1№ФункцияКоэффи-циенты15 A=3

    B=-9,7716 A=5

  • K=2

    M=1517 A=3


    C=7,33

    R=-0,218 A=4


    E=0,5

    • F=0,8№ФункцияКоэффи-циенты19 A=12

    B=1,320 A=5

    C=-3,1

    D=1

    1. B=2021 A=6

    M=1,23

    N=3,4122 A=4№ФункцияКоэффи-циенты23 A=6


    F=1,57

    E=-2.224 A=5


  • P=0,52

    E=1,3225 A=4


    M=3

    T=0,1526 A=4


    K=5

    M=1,5№ФункцияКоэффи-циенты27 A=3

    K=1,228 A=4

    K=2,2329 A=330 C=-0,12


    D=12,3

    B=0,145

    A=10

    Работа3.Арифметическиециклыспростойпеременной

    Арифметическимназывается цикл, в котором число повторений заранее известно или его можно предварительно вычислить. Название цикла связано с тем, что его параметр обычно изменяется по закону арифметической прогрессии. Если при этом параметр цикла Xявляется простой переменной, например аргументом некоторой вычисляемой в цикле функции Y=F(X),то цикл называется арифметическимцикломспростойпеременной.

    Задание.Разработать блок-схемы и составить программы вычисления нижеследующих функций.

    1.

    где Хизменяется от XH=5 до ХK=100 с шагом H=1.

    Пояснение.Количество повторений в подобных циклах можно определить по формуле

    N= (ХKХH)/Н+1

    с округлением (в случае дробного результата) до ближайшего целого в меньшую сторону. В нашем примере N=96.

    Один из возможных вариантов блок-схемы арифметического цикла для решения данной задачи представлен на рис. 7.

    Блок №3, в котором переменная Хпринимает свое начальное значение, называют блокомподготовкицикла. Блоки №4,5 вычисления функции Yи вывода результатов составляют рабочую часть, или телоцикла. Блок №6 является блокомизмененияпараметрацикла, а блок №7 – блокомпроверкиокончанияцикла.

    На многих алгоритмических языках для организации циклических программ применяются специальные операторы цикла, позволяющие упростить написание таких программ. Оператор цикла обычно объединяет в себе функции трех блоков: задания начального значения параметра цикла, его изменения и проверки окончания (блоки №3,6,7). В связи с этим может быть упрощено и начертание блок-схем, как это сделано, например, на рис. 8 для нашего примера. Но для каждого алгоритмического языка такое упрощение может быть сделано по-разному, в зависимости от особенностей оператора цикла. Далее будут использоваться два вида блок-схем циклических программ:

    а) универсальная блок-схема рис. 7, приемлемая для любого языка программирования. Отметим, что здесь возможен вариант и с расположением условия выхода из цикла (блок №7) перед телом цикла. В первом случае говорят, что это циклспостусловием,а во втором – спредусловием;

    б) упрощенная блок-схема рис. 8, которая будет использоваться в более сложных циклических программах с той целью, чтобы не загромождать общую схему решения задачи излишним количеством блоков.

    В последнем случае указывается только начало и конец цикла, но не указывается способ его организации. По желанию программиста эта блок-схема всегда может быть развернута до нужной в соответствии с особенностями используемого языка программирования.

    Переход от одного вида блок-схемы к другому можно легко осуществить, уяснив функции соответствующих блоков из сопоставления рис. 7 и рис. 8.

    Стрелка от блока №6 к блоку №3 в упрощенной блок-схеме показана пунктирной линией, так как функции возврата на повторение при использовании оператора цикла реализуются в языках программирования автома­тически без явной записи оператора перехода.

    2.

    где Хизменяется от ХН= 0 до XK= 10 с шагом Н= 0,5.

    Из отрицательных значений функции Yсформировать массив.

    Пояснение.Блок-схема решения задачи приведена на риc. 9, где идентификатором YОобозначен массив формируемых результатов, а идентификатором j– текущий индекс элементов этого массива.

    В соответствии с правилами реализации типовых операций (см. приложение) до начала цикла, пока не получено ни одного результата Y, значение индекса jравно нулю (блок №3). В процессе расчетов в теле цикла, по мере нахождения очередного отрицательного значения Y(блок №7), происходит запоминание его в массив Y0(блок 8), которое заключается в увеличении значения индекса jи присваивании элементу массива Y0jочередного значения Y. После окончания цикла величина jбудет представлять количество элементов массива Y0, которым были присвоены отрицательные значения функции Y.

    3.

    где X изменяется от ХHдо ХKс шагом Н.

    Вычислить количество Kнулевых, сумму Sположительных и произведение Pотрицательных значений функции Y. Вывод Sи Pпроизвести, если они вычислялись в цикле хотя бы один раз.

    Пояснение.Блок-схема решения задачи приведена на рис. 10. В соответствии с правилами реализации типовых операций (см. приложение) до начала цикла задаются начальные значения К,S,Р,а непосредственно вычисление количества, суммы и произведения осуществляется в теле цикла в зависимости от значения Y. В качестве признаков необходимости вывода Sи Pиспользованы переменные KSи KP,изменяющие свои значения с нуля на единицу.

    4.

    где Хизменяется от ХHдо ХKс шагом Н, найти и вывести максимальное значение функции MAXи ее аргументХМ.

    Пояснение.Блок-схема решения задачи приведена на рис. 11. В соответствии с правилами реализации типовых операций (см. приложение) поиск максимального значения функции осуществляется в цикле путем поочередного сравнения каждого нового значения Yс наибольшим из всех предыдущих: если Yбольше МАХ(блок №6), то значение МАХпринимается равным Yи запоминается значение аргумента ХМ=Х(блок №7). В качестве первого МАХдо начала цикла принимается очень малое число (блок №3), так чтобы при первом же прохождении цикла условие блока 6 было выполнено и МАХполучил значение первого результата Y.


    5.

    где Х изменяется от 0 до 100 с шагом H, причем



    Найти минимальный результат и его порядковый номер.
    6.

    где Х изменяется от -4 до 5 с шагом 0,2. Сформировать массив всех результатов. Найти произведения положительных и отрицательных значений функции Y.
    7.

    где tизменяется от 0 до 0,1 с шагом 0,002.

    Значения функции U, большие величины С,запомнить, меньшие Спросуммировать и перемножить. Найти количество значений функции U,равных C.
    8.

    где Хизменяется от Хначдо Xконс шагом H= (Хнач- Xкон)/50.

    Все результаты запоминать в массив, каждый третий результат вывести на экран. Найти суммы положительных и отрицательных результатов, а на экран вывести только сумму с наибольшим числом слагаемых.
    9.

    где

    Все результаты запоминать в массив. Найти максимальное значение функции Uи его порядковый номер, минимальное значение Uи соответствующее ему значение аргумента.

    Контрольноезадание3Составить циклическую программу вычисления функций Fm=F(X),гдеm=110,если аргумент Хизменяется от ХНдо ХКс шагом Н. Вариант задания берется из табл. 3а в соответствии с номером, указанным преподавателем. Вычисляемая функция Fmвместе с вспомогательными функциямиприведена в табл. 3б. Обозначения в графе “Задание на выполнение” табл. 3а следует расшифровать в соответствии с нижеследующими списками “Обозначения искомых переменных” и “Обозначения формируемых массивов”.

    • Таблица



    1. FmXHXKHU1U2W1W2Задание на выполнение1F1-2,57,60,79,1546S0,S1,P3,K3,R22F2-3,13,10,41,35-0,51,0K0,S1,P1,S2,R53F30,88,950,6-1063,5-25P0,S2,P1,K1,R24F4-0,22,850,3-1,20,4K0,S3,P2,P3,R05F50,8511,30,80-0,20,3S0,S3,P4,K4,R56F6-0,72,350,20,12-0,2P0,S3,K2,K3,R47F7-1,22,230,20,020,01S0,P3,K2,K3,R38F80,19,150,82,05-0,71,2P0,S2,S3,K3,R59F9-0,55,60,62,75-1,54S0,P2,P3,K3,R610F10470,20,010,02-0.2K0,S4,S1,P1,R111F1-1,35,60,5-3115P0,S4,P4,K2,R212F218,00,5-2,50,750,5P0,S1,K1,K4,R613F3-0,92,850,33,6-1,2S0,S1,P2,K2,R314F4-4,6-0,80,41,050-0,3К0,S1,P4,К1,R115F50,16,280,5-0,10,02S0,P1,K2,K3,R416F62,510,30,80,90,5P0,S3,K3,K1,R617F7-35,233,55,10,80,5-0,3К0,S2,Р2,К1,R118F8-9,100,71,5S0,S2,K2,K4,R319F91,5 I12,71,1-1,52S0,P0,P2,K4,R520F10150,30,31S0,P4,S2,K2,R621F1-0,40,450,19,62-8,3P0,S3,P3,K2,R422F2-1000,73,25-2,0K0,S1,P3,K1,R,23F3-550,81,75-0,84,2S0,S4,P3,K3,R124F40,0511,00,93,14P0,S4,P4,K2,R425F50,0512,31,1-0,3S0,K2.P4,K4,R326F62,1515,01,1-0,40,320,5K0,S3,P3,K4,R627F7-3,36,660,6-0,010,150,2S0,Р2,К2,К3,R528F8-10,370,1-1,50,5-0,2P0,S3,S4,K4,R129F9-500,40-1,5-2,3K0,P3,P2,S2,R230F100,759,540,70,3-1P0,P2,K2.K4,R1Таблица 3б

    Вычисляемая функция FmВспомогательная функция Обозначенияискомыхпеременных:

    Кn,Sn,Рn,Аt,Gt– соответственно количество, сумма, произведение, среднее арифметическое, среднее геометрическое вычисляемых значений Fm,где индексы nи tуказывают, для каких конкретных значений Fmпроизводятся расчеты перечисленных переменных:

    n=0 – для всех результатов Fm;

    1 – для результатов Fm, меньших U1;

    2 – для результатов Fm, меньших U2;

    3 – для результатов Fm, больших U1;

    4 – для результатов Fm, не меньших U2.


    t= 0 – для всех результатов Fm;

    1 – для результатов Fm, меньших V1;

    2 – для результатов Fm, меньших V2;

    3 – для результатов Fm, больших V1;

    4 – для результатов Fm, не меньших V2.

    MINминимальный результат,

    МАХ– максимальный результат,

    МIN1– минимальный по абсолютной величине результат,

    MAX1– максимальный по абсолютной величине результат.
    1   2   3   4
написать администратору сайта