Скласти блок-схему алгоритму обчислення вартості покупки олівців, якщо відома їх кількість n та вартість одного олівця m. Значення змінної m, повинно бути передбачено при будові блок-схеми командою присвоєння m:= 5 і виведено покупцю напочатку алгоритму. Після цього необхідно запитати у користувача дані про кількість (n) олівців, які він хоче придбати. В результаті роботи алгоритму покупець отримує вартість покупки.
Біля готової блок-схеми вкажи тип алгоритму .
Объяснение:
Начну с того, что в программах на языке C# используются управляемые и неуправляемые объекты. Управляемые объекты без проблем удаляются сборщиком мусора. В то время, как неуправляемые объекты необходимо освобождать вручную.
В C# есть два освобождения ресурсов: через деструктор или через метод Dispose, который определен в интерфейсе IDisposable.
Деструктор вызывается автоматически во время удаления объекта сборщиком мусора, но момент его вызова определить невозможно, так как сборщик мусора запускается только при недостатке памяти. Таким образом, объекты могут находиться в памяти вплоть до завершения программы.
Метод Dispose вызывается программистом (использующим этот класс), когда объект больше не нужен. При этом подходе происходит немедленное освобождение ресурсов. Минус подхода - программист может попросту забыть вызвать метод Dispose.
В вашем коде приведен беспроигрышный вариант: в методе f происходит освобождение управляемых и неуправляемых ресурсов.
Код прокомментировал ниже. Параметр dd необходим, чтобы не освобождать управляемые ресурсы при вызове деструктора, так на момент его вызова мы не можем быть уверенными в их состоянии, что они до сих пор находятся в памяти.
namespace ConsoleApp17
{
public class A : IDisposable // Объявление класса, реализующего интерфейс IDisposable
{
private bool disposed = false; // Объект уничтожен?
public void Dispose()
{
GC.SuppressFinalize(this); // Запрещаем сборщику мусора вызывать деструктор при удалении объекта
f(true); // Вызываем метод освобождения неуправляемых и управляемых ресурсов
Console.WriteLine(" Call dispose ");
}
private void f(bool dd)
{
if (!this.disposed) // Если объект не уничтожен, то уничтожаем
{
if (dd) // Если true, то освобождаем также управляемые ресурсы
Console.WriteLine("Dispose managed resourse. GC.collect()");
// Освобождаем неуправляемые ресурсы
Console.WriteLine("Clean up unmanaged resources");
}
disposed = true; // Помечаем, что объект уничтожен
}
~A() // Деструктор
{
f(false); // Вызываем метод освобождения неуправляемых ресурсов
Console.WriteLine("Call destruktor");
}
}
class Program
{
static void Main(string[] args)
{
A ob = new A(); // Создание объекта
ob.Dispose(); // Уничтожение объекта
}
}
}
Объяснение:
расположены в лексикографическом порядке и имеют одинаковые коды. Цифры и знаки препинания в кодовых таблицах КОИ-8 и Windows имеют различные коды. Русские таблицы в кодовых таблицах КОИ-8 и Windows расположены в порядке возрастания их кодов. Русские таблицы в кодовых таблицах КОИ-8 и Windows расположены в лексико-графическом порядке. Русские таблицы в кодовых таблицах КОИ-8 и Windows имеют различные коды. В кодовых таблицах КОИ-8 и Windows сначала расположены прописные русские буквы, а затем строчные. Русские прописные буквы в кодовых таблицах КОИ-8 и Windows имеют номера со 192 по 223. Русские буквы в кодовых таблицах КОИ-8 и Windows имеют номера со 192 по 225.
Модельный ответ:
Истинные высказывания: 3, 5, 8.
Модельный ответ с подсчетом баллов:
Каждый правильный ответ 2 балла
Учащийся уложился в 5 минут (при правильном ответе) 2 балла
Максиальный балл: 8 баллов.
Задание №2. Информационная компетентность: Аспект "Первичная обработка информации". Уровень I.
Вам нреобходимо закодировать и раскодировать слова в десятичном и двоичном коде. Пользуясь кодовой таблицей ASCII,
а) закодируйте тексты:
Текст Десятичный код Двоичный код APPLE DELETE MOUSE 7-4=3
б) декодируйте тексты:
Десятичный код Текст 69 78 84 69 82 80 65 73 78 84 66 65 67 75 83 80 65 67 69 Двоичный код Текст 01000101 01001110 01000100 01001000 01001111 01001101 01000101 01010111 01001111 01010010 01000100 01000110 01001111 01001111 01010100 01000010 01000001 01001100 01001100
Модельный ответ:
а):
Текст Десятичный код Двоичный код APPLE 65 80 80 76 69 01000001 01010000 01010000 01001100 01000101 DELETE 68 69 76 69 84 69 01000100 01000101 01001100 01000101 01010100 01000101 MOUSE 77 79 85 83 69 01001101 01001111 01010101 01010011 01000101 7-4=3 55 45 52 61 51 00110111 00101100 00110100 00111110 00110011
б):
Десятичный код Текст 69 78 84 69 82 ENTER 80 65 73 78 84 PAINT 66 65 67 75 83 80 65 67 69 BACKSPACE Двоичный код Текст 01000101 01001110 01000100 END 01001000 01001111 01001101 01000101 HOME 01010111 01001111 01010010 01000100 WORD 01000110 01001111 01001111 01010100 01000010 01000001 01001100 01001100 FOOTBALL