КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Билет № 16. 2. Решение задачи по теме "Системы счисления» ⇐ ПредыдущаяСтр 2 из 2 2. Решение задачи по теме "Системы счисления» Задание: Число 1111101101 перевести из двоичной системы счисления в десятичную и шестнадцатеричную. Число:1111101101 Разбиваем на триады: 001 111 101 101 Переводим в десятичную: 1 7 5 5 Получаем: 11111011012= 1755 Число:1111101101 Разбиваем на тетрады: 11 1110 1101 Переводим в шестнадцатиричную: 3 e d Получаем: 11111011012= 3ed16 Билет № 17 2. Построение алгоритма для обработки величин с реализацией на языке программирования (ветвление, цикл, линейный массив или вспомогательные алгоритмы). Задание: Найти корень квадратного уровнения вида ax2+bx+c=0, где а, b и с вводятся с клавиатуры. Решение: begin ClrScr; Writeln('Решаем следующее уравнение: a*x^2 + b * x + c = 0'); Write('Введи значение a:>');Readln(a); Write('Введи значение b:>');Readln(b); Write('Введи значение c:>');Readln(c); if a=0 then begin {если старший коэффициент равен 0, то уравнение превращается в линейное, тогда решаем линейное уравнение} if b=0 then begin if c=0 then Writeln('Бесконечное число решений'); if c<>0 then Writeln('Корней нет'); end else Writeln('x = ',-c/b:4:4); end else begin {иначе} d:=sqr(b) - 4*a*c; {находим дискрименант} if d<0 then Writeln('Корней нет'); {если d<0, то корней нет} if d=0 then Writeln('x = ',-b/(2*a):4:4); {если d=0, то 1 корень} if d>0 then begin {если d>0, то 2 различных корня} x1:= (-b - sqrt(d))/(2*a); {находим x1} x2:= (-b + sqrt(d))/(2*a); {и x2} Writeln('x1 = ',x1:4:4); {выводим на экран результат} Writeln('x2 = ',x2:4:4); end; end; ReadKey; {ожидание нажатия на клавишу} end. Билет № 18. 2. Задача написать программу на суммирование двух чисел, введенных с клавиатуры. Решение: Program summa; {заголовок программы} Var a,b,s:integer; {переменные а, b, s - целые числа} begin write ('введите значение a'); readln (a); write ('введите значение b'); readln (b); s:=a+b; {решение} write ('summa chisel', a, 'i', b, '=', s); {вывод ответа } readln; end.
Билет № 19 2. Задание по теме счисления. Задание: 13F из шестнадцатеричной системы счисления перевести в десятичную и двоичную. Решение перевод в двоичную: Число:13F Заменить каждую цифру шестнадцатеричного числа ее эквивалентом в двоичной системе счисления дополнив до 4-х разрядов в сторону старшего разряда: F 0001 0011 1111 Получаем: 13F = 0001001111112
Решение перевод в десятичную: Число:13F
Для перевода шестнадцатеричного числа в десятичное необходимо это число представить в виде суммы произведений степеней основания шестнадцатеричной системы счисления на соответствующие цифры в разрядах шестнадцатеричного числа. Например, требуется перевести шестнадцатеричное число F45ED23C в десятичное. В этом числе 8 цифр и 8 разрядов (помним, что разряды считаются, начиная с нулевого, которому соответствует младший бит). В соответствии с вышеуказанным правилом представим его в виде суммы степеней с основанием 16: F45ED23C16 = (15·167)+(4·166)+(5·165)+(14·164)+(13·163)+(2·162)+(3·161)+(12·160) = 409985490810 13F16=(1*162)+(3*161)+(15*160)= 31910
|