shakovaea
?>

Быстрей ​ найти переменную s

Информатика

Ответы

Kulikov1065

45

Объяснение:

Условие цикла: пока i<20 увеличивать S на i

20 : 4 = 5 - раз будет выполнятся цикл, следовательно к концу каждого цикла:

1.S=1 i =5

2.S=6 i=9

3.S=15 i=13

4.S=28 i=17

5.S=45 i=21

Lebedeva1577

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

var f1,f2,f3:text;

   n,i,a,b:integer;

begin

//создадим исходные файлы, можно вынести в отдельную программу

//или создать файлы вручную

randomize;

assign(f1,'f1.txt');

rewrite(f1);

assign(f2,'f2.txt');

rewrite(f2);

write('Сколько чисел ввести в первый файл n=');

readln(n);

writeln('Содержание файла f1:');

a:=1;

for i:=1 to n do

begin

 a:=a+random(5);

 write(f1,' ',a);

 write(' ',a);

end;

writeln;

write('Сколько чисел ввести во второй файл n=');

readln(n);

writeln('Содержание файла f2:');

a:=1;

for i:=1 to n do

begin

 a:=a+random(5);

 write(f2,' ',a);

 write(' ',a);

end;

writeln;

reset(f1);

reset(f2);

assign(f3,'f3.txt');

rewrite(f3);

//если не конец файла, то читаем числа иначе создаем барьер из

//максимально возможного целого числа

if not eof(f1) then read(f1,a) else a:=maxint;

if not eof(f2) then read(f2,b) else b:=maxint;

while (a<maxint) or (b<maxint) do//пока оба файла не кончились

begin

 if (a<=b) and (a<maxint) then //если 1<=2

  begin

   write(f3,' ',a);//1 пишем в файл 3

   if not eof(f1) then read(f1,a) else a:=maxint;//если не конец 1,

                                                 //то читаем следующее , иначе барьер

 end

 else if b<a then //иначе если 2<1 то же но со 2 файлом

  begin

   write(f3,' ',b);

   if not eof(f2) then read(f2,b) else b:=maxint;

 end;

end;

reset(f3);//смотрим что получилось

writeln('Слияние файлов:');

while not eof(f3) do

begin

 read(f3,a);

 write(' ',a);

end;

close(f1);

close(f2);

close(f3);

end.

Объяснение:

Вроде бы так, я не слишком в этом хорош.

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

begin
  var n:=ReadInteger('Количество строк в матрице:');
  var m:=ReadInteger('Количество столбцов в матрице:');
  Writeln('*** Исходная матрица [',n,',',m,'] ***');
  var a:=MatrRandom(n,m,-9,9);
  a.Println(3); Writeln(3*a.ColCount*'-');
  // 1. удалить строки с нулевыми элементами
  var v:=a.Rows.Select(x->x.All(y->y<>0)).ToArray;
  var q:=new integer[v.Where(r->r=true).Count,a.ColCount];
  var k:=0;
  for var i:=0 to v.Count-1 do
    if v[i] then begin
      q.SetRow(k,a.Row(i)); k+=1
      end;
  Writeln('Матрица, не содержащая строк с нулями');
  a:=Copy(q);
  a.Println(3);
  // 2. отсортировать элементы первого столбца по возрастанию
  a.SetCol(0,a.Col(0).OrderBy(x->x).ToArray);
  Writeln('Матрица с отсортированной колонкой 1');
  a.Println(3);
  // 3. игры с k и b
  var b:integer;
  Write('Введите значения b и 1<=k<=',a.RowCount,': '); Read(b,k);
  for var j:=k to a.RowCount-1 do a[j,m-1]+=b;
    Writeln('Матрица с модифицированной последней колонкой');
  a.Println(3)
end.

Пример
Количество строк в матрице: 5
Количество столбцов в матрице: 8
*** Исходная матрица [5,8] ***
 -4 -8  4 -4  8 -6  5 -2
  2 -7 -4  6  8  4  9 -8
  0 -8 -4 -7 -4 -7  6 -3
  6 -4 -8  9 -7 -5 -3 -2
 -9  7 -1 -2 -9  9  7  4

Матрица, не содержащая строк с нулями
 -4 -8  4 -4  8 -6  5 -2
  2 -7 -4  6  8  4  9 -8
  6 -4 -8  9 -7 -5 -3 -2
 -9  7 -1 -2 -9  9  7  4
Матрица с отсортированной колонкой 1
 -9 -8  4 -4  8 -6  5 -2
 -4 -7 -4  6  8  4  9 -8
  2 -4 -8  9 -7 -5 -3 -2
  6  7 -1 -2 -9  9  7  4
Введите значения b и 1<=k<=4: 5 2
Матрица с модифицированной последней колонкой
 -9 -8  4 -4  8 -6  5 -2
 -4 -7 -4  6  8  4  9 -8
  2 -4 -8  9 -7 -5 -3  3
  6  7 -1 -2 -9  9  7  9

Замечание: Под удалением без всяких условностей понимается именно удаление. Матрица после удаления просто содержит меньшее количество строк.

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

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

Быстрей ​ найти переменную s
Ваше имя (никнейм)*
Email*
Комментарий*

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

dimanov
sayfullinmr
Викторовна
Kalmikova1666
Coffee3862
Владислава531
nyuraborova89
mpityk
phmad7
Aleks0091
mrubleva42
Karlova1507
albina6580
AnnaChulyukanova3
Vladimirovich1898