rpforma71189
?>

Какой разрядность потребуется двоичный код если алфавит содержит 130 синмолов​

Информатика

Ответы

tofilev

for

примеры

(Pascal)

for i := 1 to 10 do

  s:=s+1;

 

(C#,C++)

for (int i=0;i<10;i++) {

   s+=i;

}

 

(Ruby)

for i in 1..10

  s=s+i

end

 

(VB, VBA, Basic,..)

for i = 1 to 10

  s=s+i

next i

 

По умлчанию шагом счетчика является 1. Обычно шаг счетчика можно менять фразой by или step by. Хотя увы такое есть не во всех языках

 

(C#,C++)

for (int i=0;i<10;i=i+2) {

   s+=i;

}

 

(VB, VBA, Basic,..)

for i = 1 to 10 step by 2

  s=s+i

next i

 

Например в паскале возможен только обратный отсчет

for i := 10 downto 1 do

  s:=s+1;

 

еще for примечателен тем, что даже если конец меньше начала (в варианте увеличения счета), то цикл все равно пройдет один раз. Правда не знаю подпадают ли под это правило языки из группы С

ayk111560

var

 s, s1, s2, s3, s4, tmp1, tmp2: string;

 i, a, b, c, d, e, f: integer;

begin

 Writeln('Введите строку: ');

 Readln(s);

 //

 for var k := 1 to length(s) do  

 begin

   if (s[k] = '(') then

   begin

     var j := k + 1;

     while (s[j].IsDigit) do

     begin

       tmp1 := tmp1 + s[j];

       j := j + 1;

     end;

     var ch := s[j];

     j := j + 1;

     while (s[j].IsDigit) do

     begin

       tmp2 := tmp2 + s[j];

       j := j + 1;

     end;

     case ch of

       '+': begin s := s.Remove(k - 1, j - k + 1); s := s.Insert(k - 1, inttostr(tmp1.ToInteger + tmp2.ToInteger)); end;

       '-': begin s := s.Remove(k - 1, j - k + 1); s := s.Insert(k - 1, inttostr(tmp1.ToInteger - tmp2.ToInteger)); end;

       '*': begin s := s.Remove(k - 1, j - k + 1); s := s.Insert(k - 1, inttostr(tmp1.ToInteger * tmp2.ToInteger)); end;

       '/': begin s := s.Remove(k - 1, j - k + 1); s := s.Insert(k - 1, inttostr(tmp1.ToInteger div tmp2.ToInteger)); end;

     end;

     break;

   end;

 end;

 //

 for i := 1 to length(s) do

 begin

   if (s[i] = '+') or (s[i] = '-') or (s[i] = '*') or (s[i] = '/') then

   begin

     s1 := copy(s, 1, i - 1);

     s2 := copy(s, i + 1, length(s));

     c := i;

   end;

 end;

 for i := 1 to length(s1) do

 begin

   if (s1[i] = '+') or (s1[i] = '-') or (s1[i] = '*') or (s1[i] = '/') then

   begin

     s3 := copy(s1, 1, i - 1);

     s4 := copy(s1, i + 1, length(s1));

     e := i;

   end;

 end;

 Val(s3, a, d);

 Val(s4, b, d);

 Val(s2, f, d);

 if (s[e] = '/') and (s[c] = '/') then Writeln((a div b) div f);

 if (s[e] = '/') and (s[c] = '*') then Writeln((a div b) * f);

 if (s[e] = '+') and (s[c] = '*') then Writeln(a + (b * f));

 if (s[e] = '*') and (s[c] = '*') then Writeln(a * b * f);

 if (s[e] = '+') and (s[c] = '/') then Writeln(a + (b div f));

 if (s[e] = '*') and (s[c] = '+') then Writeln((a * b) + f);

 if (s[e] = '/') and (s[c] = '+') then Writeln((a div b) + f);

 if (s[e] = '*') and (s[c] = '/') then Writeln((a * b) div f);

 if (s[e] = '+') and (s[c] = '+') then Writeln(a + b + f);

 if (s[e] = '-') and (s[c] = '-') then Writeln(a - b - f);

 if (s[e] = '+') and (s[c] = '-') then Writeln(a + b - f);

 if (s[e] = '-') and (s[c] = '+') then Writeln(a - b + f);

 if (s[e] = '*') and (s[c] = '-') then Writeln((a * b) - f);

 if (s[e] = '/') and (s[c] = '-') then Writeln((a div b) - f);

 if (s[e] = '-') and (s[c] = '*') then Writeln(a - (b * f));

 if (s[e] = '-') and (s[c] = '/') then Writeln(a - (b div f));

end.

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

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

Какой разрядность потребуется двоичный код если алфавит содержит 130 синмолов​
Ваше имя (никнейм)*
Email*
Комментарий*

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

Grishanin
Leobed917670
irina-mic
pnat1235
SlavaA99
Seropyan-Elena1944
phmad7
Anna-Miron
Caragyant
ВасилийМалюга152
pavtrusov
petrowanastya202081
katrinasvr
ielienakozlova696
misie1974