Skip to content

Instantly share code, notes, and snippets.

@nikoladimitroff
Created February 7, 2019 15:17
Show Gist options
  • Save nikoladimitroff/4f978266cb39daada65efb6809104f01 to your computer and use it in GitHub Desktop.
Save nikoladimitroff/4f978266cb39daada65efb6809104f01 to your computer and use it in GitHub Desktop.
Exam prep
<title>Exam prep</title>

Да се напише функция на C++ със сигнатура double Calc(double a, double b, double epsilon, long end), която изчислява

xk=15(xk−1+xk−1xk−2)k=3,...x1=a&gt;0x2=b x_k = \frac 1 5 (x_{k-1} + \frac {x_{k-1}} {x_{k-2}}) \newline k = 3, ... \newline x_1 = a &gt; 0 \newline x_2 = b \newline xk=51(xk1+xk2xk1)k=3,...x1=a>0x2=b

Изчисленията да завършват, когато ∣xk−xk−1∣&lt;ϵ|x_k - x_{k-1}| &lt; \epsilonxkxk1<ϵ. Ако kkk стане по-голямо от endendend, функцията приключва изпълнение и връща код за грешка.


Даден е масив A и число N. Да се изведат всички комбинации от числа от A, чиято сума е N.


Даден е символен низ, който представлява опростено квадратно уравнение от типиа ах^2+bx+c=0. Няма да има случаи като: ах^2+bx+c=5
ах^2+bx+(-c)=0
ах^2+(b+d)x+c=0
а
х
x+bx+c=0
а
х^2+c+b*x=0


да се напише функция int* CheckNums(long num1, long num2);, която връща указател към масив, съдържащ всички цифри, срещани едновременно в num1 и num2.


Да се напише bool doExists(const char* symbols, const char* word), която проверява дали word се среща в symbols прочетен наобратно. Да не се ползва string


Да се напише char* Encode(const char* text), която замества всеки символ с неговия ASCII код. Да се ползва '_' за разделител между кодовете.


  1. Напишете булева функция, която приема като параметри 2 символни низа и едно цяло число - N.
    Функцията трябва да прецени дали е възможно с най-много N операции за разменяне, премахване или вкарване първият низ да стане като втория и да върне true or false
    Всяко добавяне или изтриване се брои за 1 операция и можем да добавяме и трием на всяка позиция. Всяка буква от низа може да се размени с друга буква
    от същия низ и това се брои за 0 операции.

Пример:
hello -> hell = 1 (премахване на o)
yolo -> york = 4 (премахваме l и o - 2 операции и добавяме r и k - 2 операции)
abba -> bar = 3 (разменяме първите a и b - 0 операции, премахваме последните b и а - 2 операции и добавяме r - 1 операция)
fmi -> home = 5 (ще изтрием f и i - 2 операции и ще добавим е,h и o - 3 операции)
bye -> yeb = 0 (само ще разместим буквите)
Низовете съдържат символи [a-z]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment