zxcvbnm
Новичок
|
помогите решить гиперб.уравнение: utt = a2 *uxx +9.8 u(0,t)=0; ux(l,t)=0 u(x,0)=0; ut(x,0)=v0
|
Всего сообщений: 50 | Присоединился: май 2010 | Отправлено: 23 мая 2010 21:29 | IP
|
|
Aleksandr23
Новичок
|
Сама задача. Пират в подземелье. В поисках драгоценных камней пират проваливается в подземелье. План подземелья – матрица N*M комнат с драгоценными камнями. Камни из одной комнаты имеют одинаковую стоимость. Пирату в каждой комнате разрешается взять всего лишь один камень с собой и следовать в любую другую соседнюю с ней комнату. Каждую из комнат пират может посещать всего лишь один раз. Требуется составить алгоритм-программу определения маршрута посещения пиратом К комнат лабиринта таким образом, чтобы он набрал камней на максимально возможную сумму. Входные и выходные данные: В первой строке входного файла содержатся числа N,M,K. В следующих N строках располагается матрица N*M лабиринта. Каждый элемент матрицы представляется стоимостью камня соответствующей комнаты. Маршрут начинается с левой верхней угловой комнаты лабиринта. Выходные данные: содержат единственное число, равное общей стоимости взятых с собой камней. Пример файла исходных данных: 3 4 7 1 1 1 1 1 1 2 1 1 1 2 3 И вот что я написал. Пират в подземелье. uses crt; Const k=100; dx:array[1..4] of Integer=(1,0,-1,0); dy:array[1..4] of Integer=(0,1,0,-1); Type mas=array[0..k,0..k]of Integer; mas2=array[0..k,0..k]of boolean; var n,m,sum1,sum,col:integer; A:mas; B:mas2; Procedure Init(z:string); Var f:text; i,j:integer; Begin Assign(f,z); Reset(f); FillChar(A,SizeOf(A),0); FillChar(B,SizeOf(B),true); ReadLn(f,n,m,col); for i:=1 to n do begin for j:=1 to m do Read(f,A[i,j]); ReadLn(f); end; Close(f); End; Procedure Solve(x,y,p:integer); var i,j:integer; begin If p=0 then begin If sum>sum1 then sum1:=sum; end Else begin For i:=1 to 4 do If (A[x+dx,y+dy[i}}>0)and B[x+dx,y+dy[i}} then begin sum:=sum+A[x+dx,y+dy[i B[x+dx,y+dy[i}}:=false; Solve(x+dx,y+dy,p-1); sum:=sum-A[x+dx,y+dy[i}}; B[x+dx,y+dy[i}}:=true; end; end; end; begin clrscr; Init('C:\matrica.txt'); sum1:=0; sum:=A[1,1]; Solve(1,1,col); WriteLn('Result= ',sum1); readkey; end. И вот в чем моя проблема,при нажатии Alt+F9 Выходит такая тема вместо выходных данных. Main file: \...\&_MAPL~1\BE3A~1\PIRAT.PAS Done. Destination: Disk Line number: 0 Free memory: 303K Total lines: 53 Compile successful: Press any key
|
Всего сообщений: 4 | Присоединился: май 2010 | Отправлено: 25 мая 2010 13:27 | IP
|
|
Aleksandr23
Новичок
|
Сама задача. Пират в подземелье. В поисках драгоценных камней пират проваливается в подземелье. План подземелья – матрица N*M комнат с драгоценными камнями. Камни из одной комнаты имеют одинаковую стоимость. Пирату в каждой комнате разрешается взять всего лишь один камень с собой и следовать в любую другую соседнюю с ней комнату. Каждую из комнат пират может посещать всего лишь один раз. Требуется составить алгоритм-программу определения маршрута посещения пиратом К комнат лабиринта таким образом, чтобы он набрал камней на максимально возможную сумму. Входные и выходные данные: В первой строке входного файла содержатся числа N,M,K. В следующих N строках располагается матрица N*M лабиринта. Каждый элемент матрицы представляется стоимостью камня соответствующей комнаты. Маршрут начинается с левой верхней угловой комнаты лабиринта. Выходные данные: содержат единственное число, равное общей стоимости взятых с собой камней. Пример файла исходных данных: 3 4 7 1 1 1 1 1 1 2 1 1 1 2 3 И вот что я написал. Пират в подземелье. uses crt; Const k=100; dx:array[1..4] of Integer=(1,0,-1,0); dy:array[1..4] of Integer=(0,1,0,-1); Type mas=array[0..k,0..k]of Integer; mas2=array[0..k,0..k]of boolean; var n,m,sum1,sum,col:integer; A:mas; B:mas2; Procedure Init(z:string); Var f:text; i,j:integer; Begin Assign(f,z); Reset(f); FillChar(A,SizeOf(A),0); FillChar(B,SizeOf(B),true); ReadLn(f,n,m,col); for i:=1 to n do begin for j:=1 to m do Read(f,A[i,j]); ReadLn(f); end; Close(f); End; Procedure Solve(x,y,p:integer); var i,j:integer; begin If p=0 then begin If sum>sum1 then sum1:=sum; end Else begin For i:=1 to 4 do If (A[x+dx,y+dy[i}}>0)and B[x+dx,y+dy[i}} then begin sum:=sum+A[x+dx,y+dy[i B[x+dx,y+dy[i}}:=false; Solve(x+dx,y+dy,p-1); sum:=sum-A[x+dx,y+dy[i}}; B[x+dx,y+dy[i}}:=true; end; end; end; begin clrscr; Init('C:\matrica.txt'); sum1:=0; sum:=A[1,1]; Solve(1,1,col); WriteLn('Result= ',sum1); readkey; end. И вот в чем моя проблема,при нажатии Alt+F9 Выходит такая тема вместо выходных данных. Main file: \...\&_MAPL~1\BE3A~1\PIRAT.PAS Done. Destination: Disk Line number: 0 Free memory: 303K Total lines: 53 Compile successful: Press any key
|
Всего сообщений: 4 | Присоединился: май 2010 | Отправлено: 25 мая 2010 13:30 | IP
|
|
Aleksandr23
Новичок
|
Извините пожалуйста за две темы случано так получилось..
|
Всего сообщений: 4 | Присоединился: май 2010 | Отправлено: 25 мая 2010 13:31 | IP
|
|
lubitel
Новичок
|
нужна помощь в поиске ошибки Условие: найти наибольший элемент из элементов одномерного массива,которые имеют парный номер. Проверить является ли он единственным Сам смог написать только такое: program prim1; uses crt; var max:real; M:array [ 1..50 ] of integer; i,n,K2:integer; begin clrscr; writeln(' zadaite elementu massiva: '); readln(n); K2:=0; for i:=1 to n do begin writeln(M[', i ,' ]+'); readln(M[ i ]); if M[ i ] mod 2 = 0 then K2:=K2-1;end; if M[ i ]>max then max:=M[ i ]; for i:-1 to n do begin max:=M[ i ]; end; writeln(' max=', max:5:2); end; readkey; end.
|
Всего сообщений: 1 | Присоединился: май 2010 | Отправлено: 26 мая 2010 21:58 | IP
|
|
Margaritka88888
Новичок
|
помогите пожалуйста решить задачи...препод не объяснял..я ваще в них не бум-бум((( без них не допустят к экзамену(( 1. Найдите разницу в объемах шара и конуса с одинаковыми радиусами. Высота конуса равна его радиусу. В качестве пи использовать 3,14. 2. Даны координаты любой точки плоскости. Определить лежит ли точка выше или ниже прямой, являющейся биссектрисой угла 1 и 3 четверти. 3. Дан одномерный массив чискл В(13). Вычислить произведение отрицательных членов и сумму положительных.
|
Всего сообщений: 1 | Присоединился: май 2010 | Отправлено: 29 мая 2010 12:16 | IP
|
|
zxcvbnm
Новичок
|
Смоделировать движение двух шариков одного радиуса и разных цветов внутри прямоугольника другого цвета и поведение упругих шаров при ударе о стенку. Заранее всем большое спасибо!!!
|
Всего сообщений: 50 | Присоединился: май 2010 | Отправлено: 31 мая 2010 23:09 | IP
|
|
nikitanike
Новичок
|
Помогитe нaписaть прогрaмму : Которaя вычисляeт чaстноe от дeлeния двух чисeл.Прогрaммa должнa провeрять прaвильность ввeдёных пользовaтeлeм дaнных и,eсли они нeвeрныe(дeлитeль рaвeн нулю),выдaвaть сообщeниe об ошибкe. Зaрaнee спaсибо (Сообщение отредактировал nikitanike 1 июня 2010 3:12)
|
Всего сообщений: 2 | Присоединился: июнь 2010 | Отправлено: 1 июня 2010 3:09 | IP
|
|
VF
Administrator
|
Цитата: zxcvbnm написал 1 июня 2010 1:09 Смоделировать движение двух шариков одного радиуса и разных цветов внутри прямоугольника другого цвета и поведение упругих шаров при ударе о стенку.
1. Угол падения равен углу отражения (для ударов о стенку). 2. При ударе шары "обмениваются" скоростями. 3. Удар происходит, когда расстояние между центрами шаров становится равно двойному радиусу или расстояние от центра шара до стенки меньше радиуса шара. Вот такие принципы. Задание уровня курсовой. Просто так никто не напишет.
|
Всего сообщений: 3110 | Присоединился: май 2002 | Отправлено: 1 июня 2010 14:28 | IP
|
|
VF
Administrator
|
Цитата: nikitanike написал 1 июня 2010 5:09 Помогитe нaписaть прогрaмму : Которaя вычисляeт чaстноe от дeлeния двух чисeл.Прогрaммa должнa провeрять прaвильность ввeдёных пользовaтeлeм дaнных и,eсли они нeвeрныe(дeлитeль рaвeн нулю),выдaвaть сообщeниe об ошибкe.
Условный оператор if и деление (div если деление с остатком и просто / если деление в вещественных числах). Элементарная программа...
|
Всего сообщений: 3110 | Присоединился: май 2002 | Отправлено: 1 июня 2010 14:33 | IP
|
|
|