Вариант 2716502303.
Рассмотрим фрагмент программы на C:
int fibo (int n) { if (n<2) return n; else return fibo(n-1)+fibo(n-2); }
Что fibo вернет для n=7?
Рассмотрим программу на C++:
#include <stdio.h> int void main() { int j=0, k=0; f(j); cout << j + k; } void f (int& i) { k = i + 3; i = k * i; }
Напомним, что в C/C++, «int& i» — означает передачу целого параметра по ссылке.
Какое значение выведет программа?
На этой картинке
Рассмотрим утверждения:
Рассмотрим граф перехода конечного автомата (конечного преобразователя), пусть самое правое состояние у него будет принимающим.
Что неверно?
Рассмотрим контекстно-свободную грамматику G1:
<Exp> → <Exp> + <Exp> | <Exp> - <Exp> <Exp> → <Exp> * <Exp> | <Exp> / <Exp> <Exp> → <Id> <Id> → a | b | c | … | y | z
Затем, рассмотрим ее модификацию G2:
<Exp> → <Term> | <Exp> + <Term> | <Exp> - <Term> <Term> → <Factor> | <Term> * <Factor> | <Term> / <Factor> <Factor> → <Id> <Id> → a | b | c | … | y | z
Теперь рассмотрим утверждения:
Рассмотрим дерево: [svg]
Что нельзя о нем сказать?
Рассмотрим контекстно-свободную грамматику:
S → AB A → 1 | B1B B → 00A
Какую строку она может породить?
Строгий анализ некоторого алгоритма, обнаружил, что как только размер входа превосходит некоторую константу M, время выполнения алгоритма, T(n), становится не больше, чем куб от длины входа умноженный на константу, что для всех входов длины n
Проведем BFS-поиск (поиск в ширину), кратчайшего пути из A в Z:
[svg]
В каком порядке алгоритм посетит вершины?
Чтобы найти время выполнения T(n) для «fibo», предположим, что для некоторых констант a и b
Следующим шагом, определим рекуррентное соотношение, которое, если решить, будет определять время работы T(n) через константы a и b. Выберите правильное.