ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
ДЕМОНСТРАЦИОННЫЕ ПРИМЕРЫ. 'Имя файла Factorial.vbsПример 1 'Имя файла Factorial.vbs 'Задача: вычислить значение факториала введённого натурального числа n '-------------------------------------- FUNCTION RecFact(n) 'Рекурсивное вычисление факториала If n=0 Then RecFact=1 Else RecFact=n*RecFact(n-1) End If End FUNCTION '--------------------------------------- FUNCTION NonRecFact(n) 'Вычисление факториала при помощи цикла dim P P=1 While (n>1) P=n*P n=n-1 WEnd NonRecFact=P End FUNCTION '--------------------------------------- Dim n n=CInt(InputBox("Введите натуральное число", "Вычисление факториала натурального_ n:","0")) number=n MsgBox "Рекурсивно вычисленный факториал: "&RecFact(n)&_ VbCrLf&_ "Нерекурсивно вычисленный факториал: "&NonRecFact(n)_ ,vbInformation,"Результат вычисления факториала числа "&number&":" Пример 2 'Имя файла Nod.vbs 'Задача: найти наибольший общий делитель (НОД) двух целых чисел '-------------------------------------- FUNCTION RecNod(n,m) 'Рекурсивное вычисление НОД If n=m Then RecNod=n ElseIf n>m Then RecNod=RecNod(n-m, m) Else RecNod=RecNod(n, m-n) End If End FUNCTION '--------------------------------------- FUNCTION NonRecNod(n,m) 'Вычисление НОД с помощью цикла While (n<>m) If n>m Then n=n-m Else m=m-n End If WEnd NonRecNod=n End FUNCTION '--------------------------------------- Dim n, m
n=CLng(InputBox("Введите натуральное число n", "Вычисление НОД: ","25")) m=CLng(InputBox("Введите натуральное число m", "Вычисление НОД: ","50")) MsgBox "Рекурсивно вычисленный НОД: "&CStr(RecNod(abs(n),abs(m)))&_ VbCrLf&_ "Нерекурсивно вычисленный НОД: "&CStr(NonRecNod(abs(n),abs(m)))_ ,vbInformation,"Результат вычисления НОД:" Пример 3 'Имя файла: Fib.vbs 'Задача: При помощи рекурсивной функции найти и вывести на экран ' к-й элемент последовательности Фибоначчи. Последовательность Фибоначчи: ' 1, 1, 2, 3, 5, 8, 13,... Нумерация данных чисел начинается с 0. '----------------------------------------- FUNCTION Fib(k) If k=0 or k=1 Then Fib=1 Else Fib=fib(k-1)+Fib(k-2) End If End FUNCTION '----------------------------------------- dim k k=Cint(InputBox("Введите k: ", "Вычисление к-го элемента посл-ти Фибоначчи: ")) MsgBox k&"-й"&" элемент последовательности фибоначчи: "&vbCrlf& Fib(k),_ vbInformation, "Результат: " Пример 4 'Имя файла Koren.vbs 'Задача:'Вычислить, используя рекурсию: sqr(1+(n+1)*sgr(1+(n+2)*sqr(1+(n+3)*sqr(1+... ' где n - натуральное число, ' k - количество корней '-------------------------------------- FUNCTION Kor(i, n) If i=k Then Kor=sqr(1+(n+k)) Else Kor=sqr(1+(n+i)*Kor(i+1,n)) End If End FUNCTION '--------------------------------------- Dim n,k,i n=CInt(InputBox("Введите натуральное число n: ", "Ввод параметров:","1")) k=CInt(InputBox("Введите количество корней k: ", "Ввод параметров:","1")) i=1 MsgBox "Значение вычисленного корня: "&CStr(Kor(i,n)), vbInformation, "Результат: " Не нашли, что искали? Воспользуйтесь поиском:
|