Во-первых, ты плохо расслышал условие.
Вместо "нестарого" файла должно быть "растрового" файла.
Растровый файл, в отличие от векторного - это файл, в котором каждый пиксел описывается отдельно, палитрой цветов.
Картинка имеет размер 1024*512 пикселей.
Если бы каждый пиксель занимал 1 байт, тогда размер файла был бы
1024*512 байт = 512 Кбайт = 0,5 Мбайта
А у нас размер файла 1,5 Мбайта, то есть в 3 раза больше.
Значит, каждый пиксел занимает 3 байта = 3*8 = 24 бита.
Эта глубина цвета называется True Color и дает
2^24 = 16777216 цветов в палитре.
Var i,n:integer;
begin
n:=1;
i:=1;
write ('Числа не кратные 2 и 5: ');
while i<=8 do
begin
if (n mod 2 <> 0) and (n mod 5 <> 0) then
begin
write (n,' ');
i:=i+1;
end;
n:=n+1;
end;
end.
<u>План решения</u>
1. Из прямоугольного треугольника, образованного известной стороной b, известной высотой h и стороной с, можно найти угол α по определению синуса: sin(α) = h/b → α = arcsin(h/b);
2. Далее решаем треугольник по известным двум сторонам и углу между ними. Это решение известно из школьного курса.
Из теоремы косинусов: a² = b²+c²-2bc·cos(α) и потом извлекаем квадратный корень из полученного значения.
Из теоремы синусов найдем sin(β) = b·sin(α)/a → β=arcsin(b·sin(α)/a)
Третий угол найти совсем просто: γ=180°-(α+β).
3. Осталось найти значения прочих параметров
Периметр Р = a+b+c
Площадь S = 1/2×c×h
<em>// PascalABC.NET 3.2, сборка 1417 от 28.03.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var b,c,h:real;
Write('Ввести b,c,h: '); Read(b,c,h);
var alpha:=arcsin(h/b);
var a:=sqrt(b*b+c*c-2*b*c*cos(alpha));
var beta:=arcsin(b*sin(alpha)/a);
var alphaD:=RadToDeg(alpha);
var betaD:=RadToDeg(beta);
var gammaD:=180-(alphaD+betaD);
var P:=a+b+c;
var S:=h*c/2;
Writeln('a=',a:0:3);
Writeln('A=',alphaD:0:1,', B=',betaD:0:1,', C=',gammaD:0:1);
Writeln('Р=',P:0:3,', S=',S:0:5)
end.
<u>Контрольный пример</u>
Ввести b,c,h: 12.6 14.2 8
a=9.162
A=39.4, B=60.8, C=79.8
Р=35.962, S=56.80000
Procedure SolveLinear;
var
k, x, b, y: real;
begin
write('k=');
readln(k);
write('x=');
readln(x);
write('b=');
readln(b);
y := k * x + b;
writeln('y=kx+b=', y);
end;