Срешением в pascal.
1. вывести на экран и в новый файл все символы исходного файла, стоящие после первой запятой в тексте. предусмотреть случай, что запятой может не быть в файле.
2. в предложениях исходного текстового файла некоторые из слов могут быть записаны подряд несколько раз (предложение заканчивается точкой или восклицательным знаком). получить в новом файле отредактированный текст, в котором удалены повторные вхождения слов в предложениях.
1) 511
2) 584
Объяснение:
1) Максимальным трёхзначным числом в восьмеричной системе счисления является 777
777₈ = 7 * 8² + 7 * 8¹ + 7 * 8⁰ = 7 * 64 + 7 * 8 + 7 * 1 = 511₁₀
2)
547₈
+
341₈
---------
1110₈
7 + 1 = 10 (0 пишем, 1 в уме)
4 + 4 = 10 10 + 1 (который был в уме) = 11 (1 пишем, 1 в уме)
5 + 3 = 10 10 + 1 (который был в уме) = 11 (пишем 11)
Полную таблицу сложения в 8 системе счисления смотри на картинке
1110₈ = 1 * 8³ + 1 * 8² + 1 * 8¹ + 0 * 8⁰ = 1 * 512 + 1 * 64 + 1 * 8 + 0 * 1 = 512 + 64 + 8 = 584₁₀
или
547₈ = 5 * 8² + 4 * 8¹ + 7 * 8⁰ = 5 * 64 + 4 * 8 + 7 * 1 = 320 + 32 + 7 = 359₁₀
341₈ = 3 * 8² + 4 * 8¹ + 1 * 8⁰ = 3 * 64 + 4 * 8 + 1 * 1 = 192 + 32 + 1 = 225₁₀
359₁₀ + 225₁₀ = 584₁₀
//Первый ввод - число, второй - система счисления
//Pascal ABC.NET v3.0
var
a,i,b,r,n,j,bug:integer;
s,se,slo,slof:string;
procedure preob(var a,b,n:integer; var se:string);
begin
repeat
b:=a mod n;
a:=a div n;
str(b,se);
s+=se;
until (a<=n-1);
end;
begin
readln(slo);
readln(n);
for j:=1 to length(slo) do
begin;
a:=ord(slo[j]);
preob(a,b,n,se);
str(a,se);
s+=se;
for i:=1 to length(s) div 2 do
begin;
se:=s[i];
s[i]:=s[length(s)-i+1];
s[length(s)-i+1]:=se[1];
end;
write(s,'-');
slof:=slof+s;
delete(s,1,length(s));
end;
end.
//Слово Программа она кодирует как 11001111-11110000-11101110-11100011-11110000-11100000-11101100-11101100-11100000-