Дан целочисленный массив, элементы которого могут принимать значения от 0 до 1000. разработать алгоритм, который позволяет найти сумму двухзначных элементов массива, сумма цифр которых меньше 10. количество элементов массива и их в программе.
Const n=30; var x,i,s:integer; a:array[1..n]of integer; begin writeln('Массив:'); for i:=1 to n do begin x:=random(1000); a[i]:=x; write(x,' '); if (x>10) and (x<100) and ((x div 10)+(x mod 10)<10) then s:=s+a[i]; end; writeln; writeln('ответ: ',s); end.
С 1 и 3 вопросом больших проблем нет: в Юникод на 1 символ отводится 16 бит (2 байта), поэтому, если посчитать, что служебная информация в файле отсутствует, текст занимает в 2 раза больше байт, чем в нем символов. 1) ответ d - 288 байт 3) ответ b - 360000 символов
а вот со 2 проблемы. ASCII, или КОИ-7 - на 1 символ отводилось 7 бит. При этом национальные кодировки (в частности, русская) были возможны только вместо строчных латинских букв. Да и то, только прописные буквы. Расширенный ASCII, или КОИ-8 - 8-битное кодирование. В пословице, если написать ее правильно, 26 символов. Так что, ни один из ответов не подходит. Или условие неверно переписано, или это умышленный вопрос без ответа. Где-то так... Или я безнадежно туплю, но сомневаюсь, что это так))
1) var k,a,i,n : integer; t : Text; begin readln (k); n := 0; Assign (t,'test.txt'); Reset(t); i := 1; while not Eof(t) do begin read (t,a); if a = k then n := i; i := i +1; end; Close (t); writeln (n); end.
2)
var t,t1,t2 : Text; i : integer; a : real; begin Assign (t,'text.txt'); Reset (t); Assign (t1,'r1.txt'); rewrite (t1); Assign (t2,'r2.txt'); rewrite (t2); i := 1; while not Eof(t) do begin read (t,a); if i mod 2 = 1 then write (t1,a:3:3,' ') else write (t2,a:3:3,' '); i:= i +1; end; Close (t); Close (t1); Close (t2); end.
var i,n,summa,a:integer;
m:array [1..1000] of integer;
begin
clrscr;
writeln('Введите размер массива');
readln(n);
for i:=1 to n do
m[i]:=i;
if n<99 then a:=n else a:=99;
for i:=10 to a do
begin
if (i div 10)+(i mod 10) < 10 then
begin
summa:=summa+i;
end;
end;
writeln(summa);
readkey;
end.