ariyskayaa5
?>

На языке паскаль напишите программу, решающую следующую : программе на вход подается последовательность символов, завершающаяся символом '.' (точка идущие подряд последовательности цифр пятеричной системы счисления рассматриваются как числа. например, последовательность sdf812973j223k содержит три пятеричных числа: 12, 3 и 223. числа могут быть сколь угодно большими. знаки '+' и '-' не рассматриваются как части числа. напечатайте сумму всех таких чисел, которые не превосходят 2^19-1. можете предполагать, что сумма не превосходит 2^31-1. если чисел, удовлетворяющих условиям, в последовательности нет, сумма полагается равной - 1.

Информатика

Ответы

julkamysh9
1. Современное решение

// PascalABC.NET 3.2, сборка 1488 от 21.06.2017
// Внимание! Если программа не работает, обновите версию!

function From5to10(Self:sequence of string):sequence of integer;
    extensionmethod;
// Перевод последовательности заданных на строках пятиричных чисел
// в последовательность целых десятичных чисел
begin
  foreach var s in Self do begin
    var r:=0;
    var pa:=1;
    foreach var c in s.Reverse do begin
      r+=c.ToDigit*pa; pa*=5
    end;
    yield r
    end
end;

begin
  var s:=ReadlnString('Введите строку:').MatchValues('[0-4]+').From5To10;
  if s.Count=0 then Writeln('S=-1')
  else Writeln('S=',s.Sum)
end.

Пример
Введите строку: sdf812973j223k
S=73

2. Решение на TurboPascal ("Так писали наши отцы и деды в 1983 году, так и нас сейчас учат в школе")

uses Crt;

function From5to10(n:string):integer;
{ Перевод из пятиричного числа в строковом представлении
  в целое десятичное }
var
  i,pa,s:integer;
begin
  s:=0;
  pa:=1;
  for i:=Length(n) downto 1 do begin
    s:=s+pa*(Ord(n[i])-Ord('0'));
    pa:=pa*5
    end;
  From5to10:=s
end;

var
  s,w:string;
  i,k,r:integer;
begin
  ClrScr;
  Write('Введите строку: ');
  Readln(s);
  w:='';
  r:=0;
  k:=0;
  for i:=1 to Length(s) do begin
    if Pos(s[i],'01234')>0 then begin
      if w='' then k:=k+1;
      w:=w+s[i]
      end
    else
      if w<>'' then begin
        r:=r+From5to10(w);
        w:=''
        end
    end;
  if k=0 then Writeln('S=-1')
  else Writeln('S=',r);
  ReadKey
end.
РостиславовичЮлия1147
Задание 1
Информационный объем I = 44100 Гц * 5 * 60 с * 16 бит = 211680000 бит = 26460000 байт = 25839,84375 Кбайт = 25,23422241210938 Мбайт

Задание 2
I = 1,3 Мбайт t = 1 мин Частота дискретизации v = 1,3 * 1024 * 1024 * 8 бит / 60 с / 8 бит = 22719,147 Гц

Задание 3
I = 5.1 Мбайт, t = 2 минуты, v = 22050 Гц Разрядность аудиоадаптера i = 5.1 * 1024 * 1024 * 8 бит / (2 * 60) с / 22050 Гц = 16,1685 бит (округленно 16 бит)

Задание 4
I = 0.01 Гбайт, i = 16 бит, v = 44100 Гц Время t = 0,01 * 1024 * 1024 * 1024 * 8 бит / 16 бит / 44100 Гц = 121 с (округляем до 120 с)
dream2366
var   s : string[50];
  i, j, k : word;  
 f : boolean;  
function isSpace(ch : char) : boolean;
begin   isSpace := false;  
if ch = ' ' then isSpace := true;
end;  
begin   f := false;  
   repeat     j := 0;
    writeln('введите строку, состоящую из 2 слов');
    readln(s);    
for i := 1 to length(s) do    
   if isSpace(s[i]) then  
    begin    
     inc(j);      
   k := i;       end;
     if j =1 then f := true;
    until f;    
write(copy(s, k + 1, length(s)), ' ', copy(s, 1, k - 1)); 
end.
недавно такую писала :)

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

На языке паскаль напишите программу, решающую следующую : программе на вход подается последовательность символов, завершающаяся символом '.' (точка идущие подряд последовательности цифр пятеричной системы счисления рассматриваются как числа. например, последовательность sdf812973j223k содержит три пятеричных числа: 12, 3 и 223. числа могут быть сколь угодно большими. знаки '+' и '-' не рассматриваются как части числа. напечатайте сумму всех таких чисел, которые не превосходят 2^19-1. можете предполагать, что сумма не превосходит 2^31-1. если чисел, удовлетворяющих условиям, в последовательности нет, сумма полагается равной - 1.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

inessa12006
Смирнов-Оськина
ksoboleva
Дмитрий_Владимирович1162
Микроволновые системы что это​
Vos-sv
tenvalerij
Lapushkina
ЮлияДаниил520
mlf26
artem032100
extremhunter
Lugovoi
ИП-Сысоев1628
denbelousov963
gabramova