Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Структурированная запись алгоритма 7
1. Повторять 10 раз для k, изменяющегося от 1 до 10 с шагом 1 (k =1,10) 1.1. Вывести на экран значение k и k 2 Схема алгоритма Текст программы на языке Си #include <stdio.h> int main (void) { int k; for (k=1; k<=10; k++) printf (″%d - %d\n″, k, k*k); return 0; } Текст программы на языке Паскаль Program Pr7; var k: integer; begin for k:=1 to 10 do writeln (k,’ – ’, k*k) end. Текст программы на языке Фортран Program Pr7 Implicit none integer k do k=1, 10 print *, k,’ – ’, k*k enddo end Программа на языке Python for k in range(1, 11): # k = 1, 2, 3,..., 9, 10 print(" k = ", k, " k*k = ", k*k) Программа в системе Матлаб for k=1:10 disp(strcat(int2str(k),'-',int2str(k*k))) end
Задача 8. Получение таблицы значений функции Условие задачи. Получить таблицу значений функции для аргумента x, изменяющегося от -1 до 1 с шагом 0,1. Для решения задачи необходимо знать границы отрезка, на котором изменяется аргумент х, и шаг изменения х. По условию границы отрезка - от -1 до 1, а шаг изменения х на заданном отрезке равен 0.1. Поэтому вводить исходные данные с клавиатуры не надо. В задаче требуется получить таблицу значений функции, поэтому сначала один раз нужно вывести общий заголовок таблицы и заголовки колонок ‘х ’ и ‘f(x) ’. А сами значения x и f (x) нужно выводить в две колонки. Вычислять значения функции и выводить эти значения надо последовательно для каждого значения х, которое будет изменяться с шагом h = 0.1. Для этого надо организовать цикл. При организации цикла можно воспользоваться двумя вариантами. Либо использовать арифметический цикл по количеству значений х на отрезке, для которых будет вычислена функция f(x), используя формулу (где xk, xn – верхняя и нижняя границы отрезка, h – шаг изменения x), либо организовать итерационный цикл, который будет продолжаться пока x<= 1. Мы воспользуемся первым вариантом. Для этого вычислим количество значений х на отрезке от xn = -1 до xk = 1 . До цикла зададим начальное значение х = x n. Далее в цикле, который будет выполняться k раз, вычислим значение функции f=cos2(x), выведем на экран значения х и f, затем увеличим значение x на значение шага x=x+0.1 для вычисления следующего значения функции. При выводе следует учесть, что значения x и f должны располагаться под соответствующими заголовками. Это обеспечивается в программах использованием форматов вывода.
Структурированная запись алгоритма 8 1. Вывод заголовка таблицы и заголовков колонок. 2. Задание значений xn =-1, xk = 1, h = 0.1 и начального значения х = -1. 3. Вычисление количества повторений k =(xk - xn)/ h +1. 4. Повторятьдля i = 1, k 4.1. Вычисление значения функции f = cos 2 (x) 4.2. Вывод на экран x и значения функции f 4.3. Изменение аргумента x=x+ h Конец цикла по i Схема алгоритма
Программа на языке Си #include <stdio.h> #include <math.h> int main (void) { int i, k; double x,f,xn=-1.,xk=1.,h=0.1; printf (²Таблица значений функции\n²); printf (² x f(x)\n”); k=ceil((xk-xn)/h+1); for (i=1; i<=k; i++) { f=cos(x); printf (²%4.1lf%11.2lf\n”, x, f*f); x+=.1; } return 0; } Программа на языке Паскаль Program main_8; Var i, k: integer; f, x, xn, xk, h: real; begin writeln('Таблица значений функции'); writeln(' x f(x)'); xn:=-1; xk:=1; h:=0.1; x:=xn; k:=round((xk-xn)/h)+1; for i:=1 to k do begin f:=sqr(cos(x)); writeln(x:4:1, f:11:2); x:=x+h; end; end. Программа на языке Фортран Program main_8 Implicit none integer i, k real f, x,xn/-1./,xk/1./,h/0.1/ k=nint((xk-xn)/h)+1 x=xn print '(5x,A)', 'Таблица значений функции f(x)' print '(8x,A,8x,A)', 'x', 'f' do i=1,k f=cos(x)**2 print '(7x,F4.1,F11.2)', x, f x=x+h enddo end program main_8 Программа на языке Python from math import cos from math import pow print("Таблица значений функции") print(" x f(x)") xn = -1.0; xk = 1.0; h = 0.1; x = xn k = int((xk-xn)/h) + 1 for i in range(k): # i = 0, 1,..., k-1 -- всего k Значений f = pow(cos(x),2) print("{:.1f}{:11.2}".format(x, f)) x = x + h Программа в системе Матлаб disp('Табл.значений функции'); disp(' x f(x)'); xn=-1; xk=1; h=0.1; x=xn; k=(xk-xn)/h+1; for i=1:k f=cos(x)^2; disp(sprintf('%4.1f %11.2f', x,f)) x=x+h; end
|
|||||
Последнее изменение этой страницы: 2021-04-12; просмотров: 46; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.223.0.53 (0.009 с.) |