Достоинства языка C++
1)Масштабируемость. На языке C++ разрабатывают программы для самых различных платформ и систем.
2)Возможность работы на низком уровне с памятью, адресами, портами. Что, при неосторожном использовании, может легко превратиться в недостаток.
3)Возможность создания обобщенных алгоритмов для разных типов данных, их специализация, и вычисления на этапе компиляции, используя шаблоны.
Недостатки языка C++
1)Наличие множества возможностей, нарушающих принципы типобезопасности приводит к тому, что в С++-программы может легко закрасться трудноуловимая ошибка.
2)Плохая поддержка модульности. Подключение интерфейса внешнего модуля через препроцессорную вставку заголовочного файла (#include) серьёзно замедляет компиляцию, при подключении большого количества модулей. Для устранения этого недостатка, многие компиляторы реализуют механизм прекомпиляции заголовочных файлов Precompiled Headers.
3)Недостаток информации о типах данных во время компиляции (CTTI).
4)Язык C++ является сложным для изучения и для компиляции.
5)Некоторые преобразования типов неинтуитивны. В частности, операция над беззнаковым и знаковым числами выдаёт беззнаковый результат.
// Работает под Pascal ABC.NET
// Заводим переменные
var
// Нужно n типа целое для того, чтобы хранить ввод пользователя
n: Integer;
// По условию задачи необходим массив. Тк N <= 20, то заводим от 1 до 20.
// В массиве будут храниться целые поэтому Integer
a: Array [1 .. 20] of Integer;
// Также нам понадобится счетчик, указывающий на обрабатываемый элемент массива
i: Integer;
begin
// Считываем n с клавиатуры
ReadLn(n);
// Пусть первый элемент равен 1
a[1] := 1;
// Каждый последующий элемент массива
for i := 2 to n do
// Равен предыдущему элементу массива умноженному на 2
a[i] := a[i-1] * 2;
// Вывод каждого элемента массива через пробел
for i := 1 to n do
Write(a[i], ' ');
end.
Поделитесь своими знаниями, ответьте на вопрос:
Написать программу на паскале, на производство 1 кв. метра ткани затрачивают 15 минут. определить количество ткани (длина в метрах), выпущенное за т часов при ширине полотна m.
var t,m,d:real;
begin
write('Введите время работы в часах и ширину полотна в метрах ');
readln(t,m);
d:= 1/m; //Длина кв метра при ширине m
t:=t*60; //время в минутах
writeln('Длина произведенной ткани ', t/mt*d:0:2,' метра');
end.
Тестовое решение:
Введите время работы в часах и ширину полотна в метрах 8 0.75
Длина произведенной ткани 42.67 метра