Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Структурированная запись алгоритма 13
1. Ввести x, n. 2. Задать начальные значения s =0; stx =1. 3. Повторять n раз в цикле i =1, n 3.1. Вычислить очередное слагаемое stx = stx * x. 3.2. Прибавить слагаемое к сумме s=s+stx. 4. Вывести сумму s. Схема алгоритма
Программа на языке Си #include <stdio.h> int main (void) { int n, i; double x,s,stx; printf ("n="); scanf ("%d", &n); printf ("x="); scanf ("%lf", &x); s=0; stx=1; for (i=1; i<=n; i++) { stx*=x; s+=stx; } printf ("s=%7.3lf\n", s); return 0; } Программа на языке Паскаль Program Pr_13; Var s, stx, x: real; i, n: integer; begin writeln ('x='); readln(x); writeln ('n='); readln(n); s:=0; stx:=1; for i:=1 to n do begin stx:=stx*x; s:=s+stx; end; writeln('s=', s:7:3); end. Программа на языке Фортран Program Pr_13 Implicit none real s/0/, stx/1/, x integer i, n print *, 'x=' read *, x print *, 'n=' read *, n do i=1, n stx = stx*x s = s+stx enddo print *, 's=', s end Программа на языке Python print("Введите x, n (по одному в строке,”) print(“ x - вещественное, n - натуральное):") x=float(input()) n=int(input()) s = 0 stx = 1 for i in range(n): # i = 0, 1,..., n-1 - всего n повторений stx *= x s += stx print("Сумма s = ", s) Программа в системе Матлаб x = input('Введите x='); n = input('Введите n='); s = 0; stx = 1; for i = 1:n stx = stx*x; s = s+stx; end disp(strcat('Сумма s = ',num2str(s)))
Задача 14. Вычисление факториала Условие задачи. Дано натуральное N. Найти значение N!. Факториал натурального числа N — это произведение чисел натурального ряда от 1 до N. То есть 2!=1*2, 3!=1*2*3, 5!=1*2*3*4*5, N!=1*2*3*...* N. Отдельно определен факториал нуля, значение которого равно единице: 0!=1. Таким образом, для вычисления факториала числа N, отличного от нуля, требуется вычислить произведение N сомножителей, отличающихся друг от друга на 1. Вычисление произведения известного числа сомножителей выполняется так же, как и вычисление суммы известного числа слагаемых, отличия заключаются только в знаке операции и другом начальном значении: если для суммы начальное значение требуется взять равным нулю, то начальное значение произведения должно быть равно единице. Исходным данным для задачи будет натуральное число N, результатом — натуральное число F. Для организации цикла потребуется натуральное i, которое будет использоваться в качестве сомножителя при вычислении произведения. Заметим, что при вычислении произведения N!=1*2*3*...* N выполнять на первом шаге цикла умножение числа F на i =1 не имеет смысла, так как умножение на 1 не изменяет результат. Достаточно вычислить произведение 2*3*...* N, взяв в качестве первого сомножителя i =2 и далее изменяя его до N. Следует отметить, что все промежуточные значения F будут являться факториалами соответствующих значений i, т. е. начальное значение F =1!, при i =2 F = F * i =1!*2=2!, при i =3 F = F * i =2!*3=3!, наконец, при i = N F = F * i =(N -1)!* N = N!
Структурированная запись алгоритма 14 1. Ввести N. 2. Задать начальное значение F =1. 3. Повторять N раз в цикле i =2, N 3.1. Вычислить значение произведения F = F*i. 4. Вывести F. Схема алгоритма
Программа на языке Си #include <stdio.h> int main (void) { unsigned int n, i, f=1; printf (″Введите n\n″); scanf (″%u″, &n); for (i=2; i<=n; i++) f*=i; printf (″%u! = %u″, n, f); return 0; } Программа на языке Паскаль Program Pr_14; var n, i: integer; f: longint; begin writeln ('Введите n'); read (n); f:=1; for i:=2 to n do f:=f*i; writeln (n, '! = ', f) end. Программа на языке Фортран Program Pr_14 Implicit none integer n, i, f/1/ print *, ‘Введите n’ read *, n do i=2, n f=f*i enddo print *, n, '! = ', f end Программа на языке Python print("Введите n (n >0):") n=int(input()) F=1 for i in range(2,n+1): # i = 2,..., n -- всего n-1 повторений F=F*i print("{0}! = {1}".format(n,F)) Программа в системе Матлаб n= input('Введите n (n >0):'); F=1; for i =2:n F=F*i; end disp(strcat(int2str(n),'! =',int2str(F)))
|
|||||
Последнее изменение этой страницы: 2021-04-12; просмотров: 65; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.221.42.164 (0.006 с.) |