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

  • Вопросы для самостоятельной подготовки

  • Приложение 1 - Выполнение схем алгоритмов и программ

  • Наименование Обозначение Функция

  • Предопределенный процесс

  • Данные(ввод-вывод)

  • Меж­страничный соединитель

  • Список рекомендованной литературы

  • МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ЛАБОРАТОРНЫМ РАБОТАМ

  • ЛАБОРАТОРНЫЕ митп. Методические указания к лабораторным работам по дисциплине "технологии программирования" Караганда 2011


    Скачать 0.63 Mb.
    НазваниеМетодические указания к лабораторным работам по дисциплине "технологии программирования" Караганда 2011
    Дата24.09.2022
    Размер0.63 Mb.
    Формат файлаdoc
    Имя файлаЛАБОРАТОРНЫЕ митп.doc
    ТипМетодические указания
    #694173
    страница4 из 4
    1   2   3   4
    Тема: Программирование типовых числовых процессов циклической структуры

    ЦЕЛЬ РАБОТЫ – Изучение принципов организации циклического вычислительного процесса, приемов описания, формирования и обработки массивов данных.

    Вопросы для самостоятельной подготовки

    Изучить:

    • правила организации подпрограмм;

    • правила организации процедур функций.

    Постановка задачи

    1. Разработать исходный текст программы монолитной структуры (из одной программной единицы) на заданном языке программирования для решения следующих числовых задач:

    1. Вычислить и запомнить в структуре одномерного массива (таблица 6.1) заданное количество элементов числовой последовательности, заданной рекуррентным выражением.

    2. Найти минимальный элемент последовательности и его номер.

    3. Найти максимальный элемент последовательности и его номер.

    4. Вычислить сумму элементов последовательности.

    5. Вычислить произведение элементов последовательности.

    6. Отсортировать элементы последовательности по убыванию.

    7. Отсортировать элементы последовательности по возрастанию.

    8. Положительные и отрицательные элементы исходной последовательности выделить и переписать в отдельные массивы.

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

    10. Целые и дробные части элементов исходной последовательности переписать в отдельные массивы.

    1. Выполнить отладку программы.

    2. Результаты решенных задач вывести на экран.

    Таблица 6.1 - Исходные данные для выполнения лабораторной работы №6

    N п/п

    Математическое выражение

    Исходные данные

    1

    2

    3



    X(I)=2*X(I-2)/X(I-1)+TAN(0.3)*X(I-2)

    X(1)=0.53; X(2)=0.62

    i=3,4,…,30



    A(K)=3.5*A(K-2)/(1-A(K-1))

    A(1)=9.36; A(2)=5.067

    k=3,4,…,25


    Продолжение таблицы 6.1

    1

    2

    3



    B(J)=2*(B(J-1)+B(J-2)))/B(J-1)

    B(1)=2.75; B(2)=0.17

    j=2,3,…,40



    Z(M)=SIN(0.85)*Z(M-1)/Z(M-2)

    Z(1)=0.78; Z(2)=0.17

    m=3,4,…,23



    F(I)=3*F(I-2)/4+SIN(0.35)*F(I-1)

    F(1)=3.34; F(2)=0.56

    i=3,4,…,15



    C(N)=1.2*C(N-2)+C(N-1)

    C(1)=1.17; C(2)=-0.85

    n=3…17



    D(I)=D(I-1)/4+SIN(0.3)*D(I-2)

    D(1)=1.2; D(2)=-6.7

    i=3…21



    Y(I)=COS(0.46)*(Y(I-2))+SIN(0.76)*(Y(I-1))

    Y(1)=-0.75; Y(2)=0.35; i=2,3....25



    Q(K)=(COS(0.34)*Q(K-2))/Q(K-1)

    Q(1)=1.08; Q(2)=2.05; k=2,3....20



    X(K)=SIN(0.46)*(X(K-1)/ SIN(0.67)*(X(K-2))

    X(1)=1.17; X(2)=0.85; k=3,4...40



    Z(N)=2*Z(N-1)+Z(N-2)/3+SIN(0.78)*(Z(N-2))

    Z(1)=0.5; Z(2)=1.4; n=3,4....35



    B(J)=3*B(J-1)/5+COS(0.36)*B(J-2)/2*B(J-1)

    B(1)=2.85; B(2)=3.25; j=3,4...39



    Z(K)=SIN(0.87)*(Z(K-1))/(Z(K-1)+Z(K -2))

    Z(1)=2.17; Z(2)=3.02; k=3,4,5.....14



    M(K)=SIN(0.75)*M(K-1) /4*M(K-2)

    M(1)=1.75; M(2)=1.4; k=3,4....14



    Q(K) =Q(K-2)+Q(K-1)/(TAN(0.56)*(Q(K-2)))

    Q(1)=2.08; Q(2)=1.085;

    k=2,3....15



    X(I)=2*(COS(0.96)*X(I-1))/(X(I-2)+X(I-1))

    X(1)=3.02; X(2)=3.42; i=3,4...25



    S(I)=2*(TAN(0.32)*S(I-1))/(1+S(I-2) )

    S(1)=1.35; S(2)=2.57; i=3,4...24



    Q(K)=3*TAN(Q(K-2))/(1+Q(K-1) )

    Q(1)=-0.85; Q(2)=0.05; k=2,3.....19



    S(I)=2*(S(I-1)+COS(0.3))/S(I-2)

    S(1)=1.05; S(2)=1.4; i=3,4...18



    H(K)=2*H(K-1)/(2*H(K-1)+H(K-2))

    H(1)=0.05; H(2)=0.15; k=3,4....25



    X(I)=3*X(I-2)+(SIN(0.78)*X(I-1))/4*X(I-2)

    X(1)=0.20; X(2)=0.97; i=3,4....16



    Y(J)=SIN(Y(J-1))/(TAN(0.56)*Y(J-2))

    Y(1)=0.35; Y(2)=2.05; j=2,3...30


    Продолжение таблицы 6.1

    1

    2

    3



    X(I)=2*SIN(X(I-1))/2*(X(I-2)+X(I-1))

    X(1)=3.02; X(2)=3.42; i=3,4...25



    S(K)=2+LN(0.45)*(S(K-1))/(1+S(K-2))

    S(1)=1.35; S(2)=2.57; k=3,4...24



    X(I)=X(I-1)/3+SIN(0.98)*X(I-2)

    X(1)=2.35; X(2)=3.75; i=3,4....27



    S(L)=2+(LN(0.89)*S(L-2))/(1+S(L-1) )

    S(1)=1.02; S(2)=1.6; l=3,4...27



    Y(I)=2-(COS(0.96)*Y(I-2))/2*Y(I -1)

    Y(1)=0.21; Y(2)=0.8; i=3,4....17



    X(I)=I*X(I-2)+(COS(0.48)*X(I-1))*X(I-2)

    X(1)=0.32; X(2)=1.27; i=3,4....20



    Y(J)=COS(Y(J-1))/(TAN(0.6*I)*Y(J-2))

    Y(1)=0.5; Y(2)=-2.45; j=2,3...20



    X(I)=SIN(X(I-1))^2*(X(I-2)+X(I-1))

    X(1)=-3.2; X(2)=1.52; i=3,4...25


    Лабораторная работа №7

    Тема: Программирование типовых числовых процессов циклически
    вложенной структуры


    ЦЕЛЬ РАБОТЫ – Изучение методов и конструирование модульных программ с вложенными циклическими процессами, приемов описания, формирования и обработки двумерных массивов данных.

    Постановка задачи

    1. Разработать и отладить исходный текст программы модульной структуры на изучаемом языке программирования для решения следующих числовых задач:

    1. Ввести в основную память элементы исходной матрицы А(4,4).

    2. Преобразовать ее в случайные числа с равномерным распределением и сохранить их в том же массиве А(4,4).

    3. Вычислить сумму элементов верхней треугольной матрицы на полученной преобразованной матрице А(4,4).

    4. Вычислить сумму положительных элементов нижней треугольной матрицы.

    5. Найти и запомнить наибольшие элементы каждой строки.

    6. Найти и запомнить суммы элементов каждой строки и наибольшую из вычисленных сумм.

    7. Найти наименьший элемент матрицы и номера строки и столбца, в которых он расположен.

    8. Транспонировать преобразованную матрицу, сохранить результаты транспонирования в матрице B(4,4).

    9. Перемножить матрицы A(4,4), B(4,4), а результаты перемножения сохранить в матрице C(4,4).

    10. Вычислить максимальную сумму модулей элементов каждой строки преобразованной матрицы A(4,4).

    11. Найти седловую точку преобразованной матрицы А(4,4) - элемент матрицы A(i,j), являющийся одновременно минимальным в i-ой строке и максимальным в j-ом столбце.

    1. Каждую из задач реализовать в форме подпрограмм-процедур. Для управления запуском и выполнением подпрограмм в желаемом порядке предусмотреть функциональное меню c произвольным выбором пункта меню. Результаты решенных задач вывести на экран в форме документа строчной структуры.


    Приложение 1 - Выполнение схем алгоритмов и программ
    При выполнении схем алгоритмов и программ отдельные функции отображаются в виде условных гра­фических обозначений — символов. Наиболее употребляемые символы для отображения функций приведены в таблице 7.1.

    Таблица 7.1 - Наименование, обозначение и реализуемые функции в алгоритмах и программах обработки данных

    Наименование

     Обозначение

    Функция

    1

    2

    3

    Пуск-Останов





    Элемент отображает вход из внешней среды или выход из нее (наиболее частое применение − начало и конец программы). Внутри фигуры записывается соответствующее действие.

    Процесс





    Выполнение одной или нескольких операций, обработка данных любого вида (изменение значения данных, формы представления, расположения). Внутри фигуры записывают непосредственно сами операции, например, операцию присваивания: a = 10*b + c.

    Решение




    Отображает решение или функцию переключательного типа с одним входом и двумя или более альтернативными выходами, из которых только один может быть выбран после вычисления условий, определенных внутри этого элемента. Вход в элемент обозначается линией, входящей обычно в верхнюю вершину элемента. Если выходов два или три, то обычно каждый выход обозначается линией, выходящей из оставшихся вершин (боковых и нижней). Если выходов больше трех, то их следует показывать одной линией, выходящей из вершины (чаще нижней) элемента, которая затем разветвляется. Соответствующие результаты вычислений могут записываться рядом с линиями, отображающими эти пути. Примеры решения: в общем случае − сравнение (три выхода: >, <, =); в программировании − условные операторы if (два выхода: true, false) и case (множество выходов).

    Предопределенный процесс





    Символ отображает выполнение процесса, состоящего из одной или нескольких операций, который определен в другом месте программы (в подпрограмме, модуле). Внутри символа записывается название процесса и передаваемые в него данные. Например, в программировании − вызов процедуры или функции.

    Данные
    (ввод-вывод)






    Преобразование данных в форму, пригодную для обработки (ввод) или отображения результатов обработки (вывод). Данный символ не определяет носителя данных.

    Продолжение таблицы 7.1

    1

    2

    3

    Модификация





    Выполнение операций, меняющих команды или группу команд, изменяющих программу.

    Символ используется для изображения унифицированной структуры ЦИКЛ С ПАРАМЕТРОМ. Внутри символа записывается параметр цикла с указанием начального и конечного значений, а также шаг изменения цикла, если он не равен единице.

    Соединитель





    Символ отображает выход в часть схемы и вход из другой части этой схемы. Используется для обрыва линии и продолжения ее в другом месте (пример: разделение блок-схемы, не помещающейся на листе). Соответствующие соединительные символы должны иметь одно (при том уникальное) обозначение.

    Меж­страничный соединитель





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

    Комментарий



    Используется для более подробного описания шага, процесса или группы процессов. Описание помещается со стороны квадратной скобки и охватывается ей по всей высоте. Пунктирная линия идет к описываемому элементу, либо группе элементов (при этом группа выделяется замкнутой пунктирной линией).


    Символы «Соединитель» и «Меж­страничный соединитель» исполь­зуются для указания связи между разъединенными частями алгоритма при большой насыщенности схемы символами. Примеры нанесения сим­волов на оборванные линии потока показаны на рисунке 7.1.

    Размеры символов назначаются из следующих соображений. Меньший геометрический размер символа (за исключением соединителей пус­ка-останова, комментария) выби­рается из ряда 10, 15, 20...мм (рисунок 7.2). Соот­ношение большего и меньшего раз­меров должно составлять 1,5.

    Внутри символов или рядом с ни­ми помещаются записи, служащие для уточнения выполняемых функ­ций. Записи выполняются маши­нописью с одним интервалом или чертежным шрифтом.

    Каждый символ должен иметь обозначение, которое помещается в разрыве контура символа. Обозна­чение символа может состоять из координат зоны листа, в которой раз­мещен символ (рисунок 7.1), или иметь порядковый номер (рисунок 7.2).


    Рисунок 7.1 – Использование соединителей:

    а — на одной странице; б — межстраничный


    Рисунок 7.2 – Размеры символов при построении алгоритма
    Линии потока, связывающие сим­волы, должны быть параллельны линиям рамки формата листа. На­правление линий потока сверху вниз и слева направо принято за основное и стрелками не обозначается. В ос­тальных случаях направление линий обозначать стрелкой обязательно. Расстояние между параллельными линиями потока должно быть не ме­нее 3 мм, между остальными симво­лами – не менее 5 мм.


    Список рекомендованной литературы


    1. Visual Basic 6.0: Пер. с англ. СПб.: БХВ-Петербург, 2001.

    2. Гарнаев А.Ю. Самоучитель Visual Studio .NET 2003. БХВ-Петербург, 2003.

    3. Гетц К., Гилберт М. Программирование на Visual Basic 6.0 и VBA. Руководство разработчика: Пер. с англ. К.: Издательская группа BHV, 2001.

    4. Глушаков С.В., Клевцов А.Л. Visual Basic.NET 2008. АСТ Москва, 2008.

    5. Голицына О.Л., Попов И.И. Программирование на языках высокого уровня. Форум, 2008.

    6. Давыдов В.Г. Программирование и основы алгоритмизации. М.: Высшая школа, 2003.

    7. Камаев В.А., Костерин В.В. Технологии программирования: Учебник для вузов Изд. 2-е, перераб., доп. М.:Высшая школа, 2006.

    8. Карпов Р.Г., Степанов А.М., Шевякова Д.А. Visual Basic 2005. БХВ-Петербург, 2006.

    9. Керниган Б.У., Пайк Р. Практика программирования: Простота, ясность, общность. Пер. с англ. / Под ред. Бродового В.Л. Вильямс, 2004.

    10. Культин Н.Б., Цой Л.Б. Visual Basic для студентов и школьников. БХВ-Петербург, 2010.

    11. Трусов М.А. Visual Basic. Net: Практическое руководство для начинающего программиста: Самый быстрый способ освоить Visual Basic. Net с нуля. НТ Пресс, 2006.

    12. Электронный учебник «Технологии программирования» для дистанционного обучения. Сертификат № 1772 КарГТУ, 2009.

    13. http://ru.wikipedia.org/wiki/Блок-схема

    14. http://manuilov.narod.ru/structura/structura.htm

    15. ГОСТ 19.701-90. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения.



    Рассмотрено на заседании Одобрено УМБ ИТЭА

    кафедры АПП Протокол № 11

    " 28 " марта 2011 г. Председатель УМБ ИТЭА

    Протокол № 16 Салькеева А.К.

    Зав. кафедрой АПП Брейдо И.В. ____________

    ____________ (подпись)

    (подпись) " 05 " апреля 2011 г.

    МЕТОДИЧЕСКИЕ УКАЗАНИЯ

    К ЛАБОРАТОРНЫМ РАБОТАМ

    по дисциплине

    ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ

    Разработали: Жумагулова Д.К.,

    Калинин А.А.,

    Телбаева Ш.З.


    Редактор Сагадиева К.К.


    Гос. издат. лицензия №50 от 31.03.2004 г.

    Подписано к печати 29.04.2011 Формат 60х90/16 Тираж 50 экз.

    Объем 3 уч. изд. л. Заказ № ____________________________________________________________________

    Издательство КарГТУ. 100027. Караганда. Бульвар Мира, 56
    1   2   3   4


    написать администратору сайта