|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.01.2010, 23:05 | #1 |
Новичок
Джуниор
Регистрация: 22.01.2010
Сообщений: 1
|
блок схема
уважаемые форумчане, пожалуйста помогите нарисовать блок схемы этих задач:
1) Задан целый вектор X(n), n<=16. Сформировать массив К из тех элементов вектора Х, которые являются степенью числа 2. Сформированный массив перед выводом на экран упорядочить(расположить элементы по убыванию). uses crt; const max=16; var x,k:array[1..max] of integer; n,m,i,j:integer; begin clrscr; randomize; repeat write('Размер массива n='); readln(n); until n in [1..max]; writeln('Исходный массив X:'); for i:=1 to n do begin write ('x[',i,']: '); readln(x[i]); end; writeln; writeln; m:=0; for i:=1 to n do begin j:=1; while j<x[i] do j:=j*2; if j=x[i] then begin m:=m+1; k[m]:=x[i]; end; end; for i:=1 to n do for j:=i+1 to n do if k[i]<k[j] then begin m:=k[i]; k[i]:=k[j]; k[j]:=m; end; writeln('Массив К:'); for i:=1 to m do write(k[i],' '); readln end. 2) Для матрицы F(m, n), 1<(m, n)<10, напечатать номера столбцов с количеством нулей больше 1. Переставить строки по возрастанию значений минимальных элементов строк. uses crt; const nmax=9; var a:array[1..nmax,1..nmax] of integer; n,m,i,j,l,k:byte; mn,b:integer; begin clrscr; randomize; repeat write('Количество строк от 1 до ',nmax,' n='); readln(n); until n in [1..nmax]; repeat write('Количество столбцов от 1 до ',nmax,' m='); readln(m); until m in [1..nmax]; writeln('Введите элементы матрицы:'); for i:=1 to n do for j:=1 to m do begin write('a[',i,',',j,']='); readln(a[i,j]); end; clrscr; {нахождение минимальных в строках и запись их в дополнительный столбец} for i:=1 to n do begin mn:=a[i,1]; for j:=1 to m do if a[i,j]<mn then mn:=a[i,j]; a[i,m+1]:=mn; end; writeln('Исходный массив:'); writeln('Мин.': ( m*5+9)); for i:=1 to n do begin for j:=1 to m+1 do if j=m+1 then write(a[i,j]:8) else write(a[i,j]:5); writeln; end; writeln('Номера столбцов с количеством нолей больше 1:'); for j:=1 to m do begin k:=0; for i:=1 to n do if a[i,j]=0 then k:=k+1; if k>1 then write(j,' '); end; writeln; {перестановка строк по неубыванию сумм(по последнему столбцу)} for i:=1 to n-1 do for l:=i+1 to n do if a[i,m+1]>a[l,m+1] then for j:=1 to m+1 do begin b:=a[i,j]; a[i,j]:=a[l,j]; a[l,j]:=b; end; writeln('Строки по возрастанию максимальных элементов:'); writeln('Мин.' m*5+9)); for i:=1 to n do begin for j:=1 to m+1 do if j=m+1 then write(a[i,j]:8) else write(a[i,j]:5); writeln; end; readln end. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
блок схема | скатя | Помощь студентам | 1 | 29.12.2009 11:16 |
Блок схема алгоритма программы и схема взаимодействия модулей. | Lazio | Фриланс | 3 | 02.12.2009 23:10 |
Блок-схема | hitman12 | Помощь студентам | 8 | 26.09.2009 12:03 |