История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
Топ:
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Когда производится ограждение поезда, остановившегося на перегоне: Во всех случаях немедленно должно быть ограждено место препятствия для движения поездов на смежном пути двухпутного...
Устройство и оснащение процедурного кабинета: Решающая роль в обеспечении правильного лечения пациентов отводится процедурной медсестре...
Интересное:
Средства для ингаляционного наркоза: Наркоз наступает в результате вдыхания (ингаляции) средств, которое осуществляют или с помощью маски...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Дисциплины:
2021-01-31 | 336 |
5.00
из
|
Заказать работу |
|
|
Задача
Найти сумму и произведение цифр трехзначного числа, которое вводит пользователь.
Пояснение к задаче и алгоритм решения
Если трехзначное число нацело разделить на 100, то получим число сотен, т.е. первую цифру этого числа.
Если найти остаток от деления на 10 любого целого числа, то этот остаток покажет число единиц в этом числе. Таким образом извлекается последняя цифра числа.
Чтобы извлечь среднюю цифру трехзначного числа (показывающую количество десятков), можно выполнить два действия:
1. Разделить число нацело на 10. Тем самым избавиться от последней цифры трехзначного числа, превратив его в двузначное.
2. Найти остаток от деления полученного двузначного числа на 10. Этот остаток и будет средняя цифра первоначального трехзначного числа.
Извлекая вышеописанным способом цифры числа их надо присвоить переменным. Т.к. цифр три, то и переменных будет три. После этого выполнить сложение и умножение значений переменных.
Исходный код на языке программирования Pascal
var
n: integer;
a,b,c: byte;
begin
readln(n);
a:= n div 100;
b:= n div 10 mod 10;
c:= n mod 10;
writeln('Сумма: ',a+b+c);
writeln('Произведение: ',a*b*c);
end.
Занятие 5. Линейные алгоритмы. Битовые операции над числами
Задача
Выполнить логические побитовые операции "И", "ИЛИ" и др. над числами 5 и 6. Выполнить над числом 5 побитовый сдвиг вправо и влево на два знака. Объяснить полученный результат.
Пояснение к задаче и алгоритм решения
Обычно в языках программирования предусмотрены так называемые логические побитовые операции. Они выполняются не над самими числами, а над их двоичным представлением. Например, число 5 в двоичной системе счисления выражается как 101, а число 6 - как 110. Выполняя логическую побитовую операцию "И" получим число 4, т.к. в младшим разряде числа 5 стоит 1, а числа 6 - 0. Выражение "1 и 0" возвращает 0. Продолжая поразрядно выполнять логическое "И" в среднем разряде получим 0, а в старшем 1. Можно записать так:
101
110
100
Двоичное число 100 - это десятичное число 4.
|
Выполним операцию побитового логического "ИЛИ":
101
110
111 - это число 7.
"Исключающее ИЛИ":
101
110
011 - это число 3.
При сдвиге биты просто сдвигаются на указанное количество ячеек в освободившиеся ячейки дописываются нули или единицы (это зависит от ряда причин):
110 << 2 = 11000 (число 24),
110 >> 2 = 001 (число 1).
Исходный код на языке программирования Pascal
Var a, b: byte;
begin
a:= 5;
b:= 6;
writeln('a=', a);
writeln('b=', b);
writeln('a and b = ', a and b);
writeln('a or b = ', a or b);
writeln('a xor b = ', a xor b);
writeln('b shl 2 = ', b shl 2);
writeln('b shr 2 = ', b shr 2);
end.
Пример(ы) выполнения программы на языке Pascal
a=5
b=6
a and b = 4
a or b = 7
a xor b = 3
b shl 2 = 24
b shr 2 = 1
Особенности решения на языке программирования Pascal
В Паскале обычные логические операции и побитовые обозначаются одинаково. Первые применяются, если операнды имеют булевый тип (они получаются в результате простых логических операций >, < и др.), а вторые - если операнды представляют собой целые числа (неважно какого типа).
Занятие 6. Линейные алгоритмы. Вывести уравнение прямой по координатам двух точек
Задача
По введенным пользователем координатам двух точек вывести уравнение прямой, проходящей через эти точки.
Пояснение к задаче и алгоритм решения
Общее уравнение прямой имеет вид y = kx + b. Для какой-то конкретной прямой в уравнении коэффициенты k и b заменяются на числа, например, y = 4x - 2. Задача сводится именно к нахождению этих коэффициентов.
Так как координаты точки это значения x и y, то мы имеем два уравнения. Пусть, например, координаты точки А(3;2), а координаты B(-1;-1). Получаем уравнения:
2 = k*3 + b,
-1 = k*(-1) + b.
Решая полученную систему уравнений находим значения k и b:
b = 2 - 3k
-1 = -k + 2 - 3k
4k = 3
k = 3/4 = 0.75
b = 2 - 3 * 0.75 = 2 - 2.25 = -0.25
Таким образом, получается уравнение конкретной прямой, проходящей через указанные точки: y = 0.75x - 0.25.
|
Вывод общих выражений для вычисления b и k:
| y1 = kx1 + b
| y2 = kx2 + b
b = y2 - kx2
y1 = kx1 + y2 - kx2
k = (y1 - y2) / (x1 - x2)
Алгоритм решения данной задаче на языке программирования будет таков:
1. Получить значения координат первой точки и присвоить их переменным, например x1 и y1.
2. Получить значения координат (x2, y2) второй точки.
3. Вычислить значение k по формуле k = (y1 - y2) / (x1 - x2).
4. Вычислить значение b по формуле b = y2 - k * x2.
5. Вывести на экран полученное уравнение.
Исходный код на языке программирования Pascal
var
x1,y1,x2,y2: real;
k, b: real;
begin
write('A(x1;y1): '); readln(x1, y1);
write('B(x2;y2): '); readln(x2, y2);
k:= (y1 - y2) / (x1 - x2);
b:= y2 - k * x2;
writeln('y = ',k:0:2,'x + ',b:0:2);
end.
Пример(ы) выполнения программы на языке Pascal
A(x1;y1):
1.2
5.6
B(x2;y2):
-3.45 8.2
y = -0.56x + 6.27
Занятие 7. Линейные алгоритмы. Найти длину гипотенузы
Задача
По двум введенным пользователем катетам вычислить длину гипотенузы.
|
|
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...
Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!