Babushkina27
?>

Вывести на экран все трехзначные числа оканчивающиеся на 23 в столбец на паскале

Информатика

Ответы

Yuliya1693
123
223
323
423
523
623
723
823
923
sychevao19975
     uses
      Crt;
     
    const
      n = 8;
      m = 10;
     
    var
      A: array[1..m, 1..n] of real;
      L, R, i, j, S: integer;
      x, k: real;
      Sort: boolean;
     
    begin
      
      clrscr;
      
      
      randomize;
      for i := 1 to m do
        for j := 1 to n do
          A[i, j] := random(100) / 10;
      writeln('Матрица A');
      
      
      repeat
        Sort := False;
        for i := 1 to m do
          for j := 1 to n - 1 do
            if A[i, j] > A[i, j + 1] then begin
              k := A[i, j];
              A[i, j] := A[i, j + 1];
              A[i, j + 1] := k;
              Sort := True;
            end;
      until
      sort = False;
      
      for i := 1 to m do
      begin
        for j := 1 to n do
          write(A[i, j]:6:1);
        writeln;
      end;
      writeln;
      
      
      writeln('Ввод x');
      readln(x);
      
      for i := 1 to m do
      begin
        L := 1;
        R := n;
        while L < R do
        begin
          j := trunc((L + R) / 2);
          if A[i, j] < x then
            L := j + 1
          else
            R := j;
        end;
        if A[i, R] = x then
          writeln('В ', i, ' строке позиция x:', i, ',', R)
        else
          writeln('В ', i, ' элемент не найден');
      end;
      
      readkey;
      
    end.
Galina_Yurevna
Во первых зачем тут числа Фибоначи?

На вход подается 2 числа: a,b где
2^a + 2^(a+1) + 2^(a+2) + ...  2^(b-2) +  2^(b-1) + 2^b

На выводе число - результат формулы выше при подстановке a и b

1 вариант через цикл, сложность O(n):

VAR 
  a, b, adder, sum, i: INTEGER;
BEGIN 
  READ(a, b); 
  adder := 1; 
  FOR i := 1 TO b DO 
  BEGIN   
    adder := 2 * adder;   
    IF (i >= a)   
    THEN     
      sum := sum + adder 
  END; 
  WRITELN(sum);
END.

2 вариант через побитовые сдвиги, сложность O(1):

VAR  a, b: INTEGER;
BEGIN 
  READ(a, b);
  WRITELN((1 SHL (b+1)) - (1 SHL (a)));
END.

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

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

Вывести на экран все трехзначные числа оканчивающиеся на 23 в столбец на паскале
Ваше имя (никнейм)*
Email*
Комментарий*

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

Fedorova_79166180822
Картузов-Алексей1252
Khrimyan1207
Vello Olga
KrisTinka
bellaalya13862
Владимир-Денисович1080
Klyucharyova
superbalsa
Павловна1750
museumuzl
Aleks120498
larinafashion829
Novikova
петрАфанасьев