![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Всем доброго времени суток.
Прошу помочь, кому не трудно, с несколькими задачами. ![]() ![]() Заранее спасибо. |
#2
|
||||
|
||||
![]() Реализовать в Delphi можно всё, что можно реализовать на бумаге.
Формулы, расчёты и примеры выложите - и будет вам "прототип". А дальше только дело интерфейса... Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#3
|
|||
|
|||
![]() Цитата:
![]() Могу выложить текст программы для редактирования, но там задания не много другие. 1) Рассчитать сумму отрицательных элементов массива А(n), если известно, что n = 5, A = (1.5, -4.6, 10, -1.7, -4.9). Код:
PROGRAM Ivanov5; {$APPTYPE CONSOLE} USES SysUtils; CONST n=5; // количество элементов массива TYPE ar=array[1..n] of real; // объявление типа массива VAR a:ar; // исходный массив А s:real; // сумма отрицательных элементов i:integer; // счетчик элементов begin // Ввод исходных данных WriteLn('Type ', n, ' real elements of array:'); for i:=1 to n do Read(a[i]); // Выполнение задачи s:=0; // начальное значение суммы for i:=1 to n do // цикл перебора элементов массива if a[i]<0 then // выборка отрицательных элементов s:=s+a[i]; // суммирование // Вывод результата if s=0 then WriteLn('There are NO negative elements') else WriteLn(' S=',s:8:4); WriteLn('***** Press <ENTER> to finish *****'); Readln; // задержка экрана Readln; END. 2) Найти разность R между максимальным и минимальным элементами массива... program Ivanov5_2; {$APPTYPE CONSOLE} uses SysUtils; const m=3; // количество строк и столбцов type mas=array[1..m,1..m] of integer; // тип массива var A:mas; // массив А R:integer; // разность Amax:integer; // максимальный элемент Amin:integer; // минимальный элемент i,j:integer; // счетчики по строкам, столбцам begin // Ввод исходных данных WriteLn('Type integer elements of array A:'); for i:=1 to m do for j:=1 to m do Read(A[i,j]); // поэлементное чтение массива Amin:=A[1,1]; // начальное значение минимального элемента Amax:=A[1,1]; // начальное значение максимального элемента // поиск минимального и максимального элементов for i:=1 to m do for j:=1 to m do begin if A[i,j]<Amin then Amin:=A[i,j]; if A[i,j]>Amax then Amax:=A[i,j] end; R:=Amax-Amin; // разность WriteLn('-----------------------------------'); WriteLn(' Result: R=',R:4); WriteLn('***** Press <ENTER> to finish *****'); Readln; // задержка экрана Readln; end. P.S. если поможете то могу подарить ключик от беты Starcraft II ![]() Последний раз редактировалось Admin, 23.05.2010 в 17:44. |
#4
|
|||
|
|||
![]() Ну пожалуйста помогите. Завтра уже нужно сдать задание
![]() |
#5
|
||||
|
||||
![]() первая (писал на коленках):
Код:
PROGRAM Ivanov5; {$APPTYPE CONSOLE} USES SysUtils; Const k=9; VAR n,m:array[1..10] of integer; y:array [1..10] of real; i:integer; x:real; begin x:=1.02*10000; n[1]:=156; n[2]:=18; n[3]:=72; n[4]:=10; n[5]:=95; n[6]:=100; for i:=1 to 6 do m[i]:=n[i] mod k; for i:=1 to 6 do if m[i]=0 then Y[i]:=sin(x) else Y[i]:=cos(x)+m[i]; for i:=1 to 6 do WriteLn(' S=[',y[i]:8:4,']'); WriteLn('***** Press <ENTER> to finish *****'); Readln; // задержка экрана Readln; END. Вторую не понял что надо сделать ... если объяснишь то помогу Последний раз редактировалось Admin, Сегодня в 10:32. Последний раз редактировалось friz, 24.05.2010 в 13:00. |
#6
|
|||
|
|||
![]() friz спасибо большое!
На счет второй: вот похожая, но мне нужно без файлов и процедур Код:
Сформировать массив К из положительных отношений элементов n-го и s-го столбцов массива. program Lab_6; {$APPTYPE CONSOLE} uses SysUtils; const s = 1; //s и n столбцы, которые нужно переместить n = 4; MaxDim = 5; // максимальный размер матрицы type arr=array[1.. MaxDim,1.. MaxDim] of integer; // тип arr для массива А arr2=array[1..MaxDim] of real; var A:arr; // массив А K:arr2; //массив K, тобишь куда будем записывать положительное часное от деления i,j:integer; // счетчики по строкам, столбцам m:integer; // размер квадратной матрицы fi,fo:text; // файловые переменные //------------------------------------------------------------- // Описание процедуры чтения массива из файла // f, a1, MaxD, m1 - формальные параметры // // Исходные данные: // f - файл исходных данных, // MaxD - максимальная размерность массива a1 // // Результат: // заполненный массив a1 и его реальный размер - m1 //------------------------------------------------------------- Procedure ReadFromFile(var f:text;var A1:arr;MaxD:integer; var m1:integer); Var i,j:integer; // счетчики по строкам, столбцам - локальные переменные begin Readln(f,m1); // чтение размера матрицы из первой строки файла if m1>MaxD then // проверка размера матрицы begin m1:=MaxD; Writeln('Матрица из файла урезана до размера массива'); end; for i:=1 to m1 do // чтение из файла матрицы А begin for j:=1 to m1 do Read(f,A1[i,j]); Readln(f); // перевод указателя файла на новую строку end; end; //------------------------------------------------------------- // заполнение массива K // // Исходные данные: массив a1 и его реальный размер - m1. //------------------------------------------------------------- Procedure Schet(Var a1:arr; m1:word; s1,n1:integer; var k: arr2); Var i: word;// счетчик по строкам begin For i:=1 to m1 do //проверка условия и заполнение массива k if (a1[s1,i]/a1[n1,i])>0 then k[i]:=(a1[s1,i]/a1[n1,i]); end; //------------------------------------------------------------- // описание процедуры вывода результата в файл и на экран // // Исходные данные: // f - файл для сохранения результата, // Результат - вывод результатов программы в файл и на экран //------------------------------------------------------------- Procedure SaveToFile(var f:text; var m1:integer; var k:arr2); Var i:integer; begin For i:=1 to m1 do begin Writeln(f,'k[',k[i],']=') end; For i:=1 to m1 do begin Writeln('k[',k[i],']=') end; end; begin AssignFile(fi,'matr.txt'); // Файловой переменной fi назначается файл matr.txt Reset(fi); // Текстовый файл открывается для чтения // чтение данных из файла fi; // A, MaxDim, m - фактические параметры ReadFromFile(fi,A,MaxDim,m); CloseFile(fi); // Закрывается прочитанный файл fi // вызов процедуры решения основной задачи Schet(A,m,s,n,k); // Файловой переменной fo назначается файл matr.out AssignFile(fo,'matr.out'); Rewrite(fo); // Текстовый файл fo открывается для записи // вызов процедуры вывода результатов в файл SaveToFile(fo,m,k); CloseFile(fo); // Закрывается файл fo,созданный программой WriteLn('***** Press <ENTER> to finish *****'); Readln; // задержка экрана end. |
#7
|
||||
|
||||
![]() вторая
Код:
PROGRAM Ivanov5; {$APPTYPE CONSOLE} USES SysUtils; Const N=3; S=2; VAR k:array[1..10] of real; a:array [1..10,1..10] of real; i:integer; x:real; begin x:=1.02*10000; a[1,1]:=3.1; a[1,2]:=1.6; a[1,3]:=9.3; a[2,1]:=1.5; a[2,2]:=2.3; a[2,3]:=4.5; a[3,1]:=2.2; a[3,2]:=6.4; a[3,3]:=4.4; for i:=1 to 3 do k[i]:=(a[s,i]/a[n,i]); for i:=1 to 3 do WriteLn(' k=[',k[i]:8:4,']'); WriteLn('***** Press <ENTER> to finish *****'); Readln; // задержка экрана Readln; END. Последний раз редактировалось Admin, Сегодня в 10:32. |
#8
|
|||
|
|||
![]() friz спасибо, очень помог
![]() |