Новые сообщения · Правила  
Модератор форума: Berestovskiy  
Форум ПРОГРАММИСТОВ » ПРОГРАММИРОВАНИЕ » Паскаль » Решения задач на Паскале!Срочно нужно!
Решения задач на Паскале!Срочно нужно!
Помогите пожалуйста разобраться с программой, в чём ошибка, просто не понимаю до конца, как писать подпрограммы в Паскале. А условие такое : вычеслить z=(x1+y1)/(x2-y2), где х1,х2-корни уравнения 2x^2+x-c=0, a y1,y2 корни ax^2+x-4=0, нахождение корней квадратного уравнения оформить в виде подпрограммы.
Program P1;
uses crt;
var a,c,x1,x2,y1,y2,x:integer;
z,y:real;
Procedure sust (x1,x2,y1,y2,a,c,b,D:real);
begin
write('zadaite c=');
readln©;
D:=1+8*c;
if D>0 then begin
x1:=(-1+sqrt(D))/4;
x2:=(-1+sqrt(d))/4;
writeln('x1=',x1:5:2, 'x2=',x2:5:2);
end
else if D=0 then writeln ('x1=x2=', -1/4)
else writeln ('koreniv nemae');
write ('zadaite a=');
readln(a);
D:=1+8*a;
if D>0 then begin
y1:=(-1+sqrt(D))/2*a;
y2:=(-1-sqrt(D))/2*a;
writeln ('y1=',y1:5:2, 'y2=',y2:5:2);
end
else if D=0 then writeln('y1=y2=', -1/(2*a))
else writeln('koreniv nemae');
end;
begin
write('vvedite znachenie a,c=');
readln(a,c);
z:=(x1+y1)/(x2-y2);
writeln('z=',z:5:2);
readkey
end.
61 | Автор: malish-z | 2011-03-04, 16:35   |  Репутация: [ + 0 ]
Quote (malish-z)
Помогите пожалуйста решить задачку в Паскале нужно вывести на экран положительные элементы, находящиеся на главной диагонали, матрицы размерностью nxn заранее благодарна)

Code

uses crt;
const n=5;
var
x:array[1..n,1..n] of integer;
i,j:byte;
begin
clrscr;
randomize;
for i:=1 to n do
begin
for j:=1 to n do
begin
x[i,j]:=random(9)-3;
if i=j then
begin
textcolor(12);
write(x[i,j],'   ');
end
else
begin
textcolor(white);
write(x[i,j],'   ');
end;
end;
writeln;
end;
writeln;
writeln('Otricatelnie chisla po diagonali:');
for i:=1 to n do
begin
textcolor(green);
if x[i,i]<0 then
write(x[i,i],'     ')
end;
readln;
end.

с красатой и т.д.)

62 | Автор: ShowMe | 2011-03-06, 22:00   |  Репутация: [ + 0 ]
спасибо большое=)

Добавлено (19.03.11, 08:29)
---------------------------------------------
Помогите пожалуйста, условие задачи: в таблице действительных чисел все элементы, которые больше 7 заменить суммой предыдущих елементов.
Я сделала такую же задачу, только она считает сумму ДВУХ предыдущих элементов, а мне нужно ВСЕХ. Подскажите, как исправить ту строчку?????
Program P16;
uses crt;
const n=10;
var a:array[1..n] of integer;
i:integer;
begin
writeln('zadaite znachenie elementa massiva:');
for i:=1 to n do
begin
write('a[',i,']=');
readln(a[i]);
end;
for i:=1 to n do
if a[i]>7 then a[i]:=a[i-1]+a[i-2];
writeln ('vuvod elementa massiva a');
for i:=1 to n do
writeln('a[',i,']=',a[i]);
readkey
end.

63 | Автор: malish-z | 2011-03-19, 08:29 | Изменено: malish-z - Сб, 2011-03-19, 08:28   |  Репутация: [ + 0 ]
помогите пожалуйста!!!!! нужно решить задачи на паскале!! помогите!! очень прошу!!!
вот они:
1)заполнить экраны группами из 4 вложенных квадратов. Задано сторону а внутреннего квадрата. Длина стороны каждого квадрата, охватывающий, увеличивается на значение а. Расстояние между соседними группами квадратов равна а / 2.

2)для каждого цвета К, изменяется в пределах от 0 до 7, высветить все точки экрана, используя для точки с координатами (i, j) цвет с номером, равным частному от деления.

$$\frac{i^{2}+25j^{2}}{k+1}$$

3)В заданном текстовом файле каждая тройка натуральных чисел задает координаты точки и ее цвет. Вывести на экраны все точки, в которых координата у находится в пределах от у1 к у2, где у1 и у2 - заданные натуральные числа.

64 | Автор: evgesha | 2011-03-19, 13:57   |  Репутация: [ + 0 ]
помогите,плииззз
" Значення змінних X, Y, Z поміняти місцями так, щоб вони виявилися впорядкованими за зростанням."
65 | Автор: Molekylu | 2011-03-20, 22:43   |  Репутация: [ + 0 ]
если кому не тяжело,помогите написать програмку в паскале через функцию и процедуру:
вычеслить g(1,2;s)+g(2*s-1;s*t) где g(a,b)=(a^2+b^2)/(a^2+2ab+3b^2+4). Вычисление функции g(a,b) оформить в виде подпрограммы.
66 | Автор: malish-z | 2011-03-21, 16:14   |  Репутация: [ + 0 ]
Code
function myFunc(a, b: real): real;
begin
result = (a*a+b*b) / (a*a+2*a*b+3*b*b+4);
end;

это тебе функция
в программе пишешь свою инструкцию.
Code
g(1.2, s)+g(2*s-1, s*t);

если честно не совсем понятно в чем проблема


If you can't make it GOOD make it LOOK GOOD. B.Gates
67 | Автор: DoVe | 2011-03-22, 01:01   |  Репутация: [ + 48 ]


If you can't make it GOOD make it LOOK GOOD. B.Gates
67 | Автор: DoVe | 2011-03-22, 01:01   |  Репутация: [ + 48 ]
Добрый День!
Помогите ,пожалуйста,решить эти примеры.
К сожалению,сам я ничего в паскале не понимаю.Друзья тоже( Других вариантов,кроме этого форума,у меня нет.Помогите пожалуйста. Заранее спасибо!
http://s007.radikal.ru/i301/1103/83/d5a03fdd53e5.jpg
http://s59.radikal.ru/i166/1103/20/174c40b306f1.jpg
http://i010.radikal.ru/1103/77/018caf54b60c.jpg
http://i047.radikal.ru/1103/2b/c8b0755a33c3.jpg
68 | Автор: Matveev | 2011-03-22, 10:31   |  Репутация: [ + 0 ]
помогите,плииззз
" Значення змінних X, Y, Z поміняти місцями так, щоб вони виявилися впорядкованими за зростанням."
69 | Автор: Molekylu | 2011-03-22, 10:40   |  Репутация: [ + 0 ]
точняк:)

var
c,k,i:integer;
begin k:=20;c:=20;
for i:=1 to 29 do begin
c:=c+2;
k:=k+c;
end;
writeln('В зрительном зале 'k' кресел');
end.


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
70 | Автор: Berestovskiy | 2011-03-22, 14:42   |  Репутация: [ + 211 ]
Ребят, всем привет, буду благодарен если немного подскажите! как при задаче "Найти наименьшее значение функции $$y=ax^{3}+bx^{2}+cx+d$$ и значение аргумента x, при котором оно получено. Аргумент x меняется от х0 до х1 с шагом h.

Проблема состоит в том что никак не могу придумать как при определенном минимуме y она бы выдавала мне х, с которого получился минимальный y. Буду благодарен если подскажете как это сделать, или целиком напишите)))))Заранее спс)

71 | Автор: dimass | 2011-03-23, 22:47   |  Репутация: [ + 0 ]
Quote (malish-z)
Помогите пожалуйста, условие задачи: в таблице действительных чисел все элементы, которые больше 7 заменить суммой предыдущих елементов. Я сделала такую же задачу, только она считает сумму ДВУХ предыдущих элементов, а мне нужно ВСЕХ. Подскажите, как исправить ту строчку????? Program P16; uses crt; const n=10; var a:array[1..n] of integer; i:integer; begin writeln('zadaite znachenie elementa massiva:'); for i:=1 to n do begin write('a[',i,']='); readln(a[i]); end; for i:=1 to n do if a[i]>7 then a[i]:=a[i-1]+a[i-2]; writeln ('vuvod elementa massiva a'); for i:=1 to n do writeln('a[',i,']=',a[i]); readkey end.

if a[i]>7 then begin a[c]:=a[i];
for x:=1 to a[i] do
a[c]:=a[x]+a[x+1];end;
a[i]:=a[c];
Примерно так:)


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
72 | Автор: Berestovskiy | 2011-03-24, 09:03 | Изменено: Berestovskiy - Чт, 2011-03-24, 09:05   |  Репутация: [ + 211 ]
спасибки)

Добавлено (24.03.11, 15:21)
---------------------------------------------
Как эту программу написать через функцию?

program P1;
uses crt;
var d:real;
procedure sust(a,b,c:real; var x1,x2:real; var q:boolean);
begin if a=0 then begin x1:=-c/b; x2:=x1 end
else
begin
d:=b*b-4*a*c; q:=d<0;
if not q then
begin
d:=sqrt(d); x1:=(-b+d)/(2*a); x2:=(-b-d)/(2*a)
end end;
writeln(x1:5:2,' ',x2:5:2); end;
var a,c,z,x1,x2,y1,y2:real; q:boolean;
begin write('zadaite a,c='); readln(a,c);
sust(a,1,-4,x1,x2,q); if q then
begin writeln('rozvjazkiv ne isnye');
readln; end;
sust(2,1,-c,y1,y2,q); if q then
begin writeln('rozvjazkiv ne isnye'); readln;
end;if x2=y2 then begin writeln('z ne vuznachena'); readln; end;
z:=(x1+y1)/(x2-y2); writeln('z=',z:5:2);
readkey
end.

73 | Автор: malish-z | 2011-03-24, 15:21   |  Репутация: [ + 0 ]
эту программу задай функцией, а в теле основной программы вызови фунцкию:)

Нужна помощь? Сюда: vkontakte.ru/berestovskiy
74 | Автор: Berestovskiy | 2011-03-25, 11:26   |  Репутация: [ + 211 ]
Маємо додатні цілі числа a, b, c, що є сторонами трикутника. Скласти алгоритм і програму для перевірки наступних висловлювань:
1. Трикутник із сторонами a, b, c існує.
2. Трикутник із сторонами a, b, c є прямокутним.
Передбачити виведення повідомлення про помилку та повторного введення a, b, c у випадку, коли введено хоча б одне від’ємне число.


Nikolas
75 | Автор: nikolas | 2011-03-28, 16:22   |  Репутация: [ + 0 ]
Помогите пожалуйста написать программу на Паскале:
создать список группы с n учащихся, в котором указано: фамилия, инициалы, дата рождения, специальность, название троих дисциплин и соответствующие оценки
76 | Автор: malish-z | 2011-04-04, 15:06   |  Репутация: [ + 0 ]
type Stud=record
FamN:string[20];
Date:string[10];
Spec:string[10];
DiscOc:string[15];
end;
var
Group:array[1..20]of Stud;tekStud:Stud;
i,n:byte;
begin
writeln('Введите кол-во учащихся');read(n);
for i:=1 to n do begin
writeln('Введите Фамилию ученика ',i,':');readln(tekStud.FamN[i]);
writeln('Введите дату рождения ',i,' ученика:');readln(tekStud.Date[i]);
writeln('Введите специальность ',i,' ученика:');readln(tekStud.Spec[i]);
writeln('Введите предмет и соотв. оценки ',i,' ученика:');readln(tekStud.DiscOc[i]);
end;
readln;
end.

В благодарность, принимаю, повышение репутации (Зелёный плюсик)


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
77 | Автор: Berestovskiy | 2011-04-08, 03:40   |  Репутация: [ + 211 ]
помогите пожалуйста написать программу очень нужно...

В заданых массивах Y(9) та C(15) найти самое большое значение, что встречается в массиве после отбрасывания с него всех елементов, которые равны максимальному елементу. Вывести полученый масив, максимальное значение и самое большое значение в оставшихся.

ИСПОЛЬЗУЯ ПРОЦЕДУРЫ.

78 | Автор: Lerikalera | 2011-04-10, 17:06   |  Репутация: [ + 0 ]
SOS

Написать процедуру которая для трех произвольных чисел X, Y, Z путем перезаписи значений выдает упорядочную тройку: X=Y=Z

79 | Автор: LIREND | 2011-04-10, 21:03   |  Репутация: [ + 0 ]
Quote (Lerikalera)
помогите пожалуйста написать программу очень нужно... В заданых массивах Y(9) та C(15) найти самое большое значение, что встречается в массиве после отбрасывания с него всех елементов, которые равны максимальному елементу. Вывести полученый масив, максимальное значение и самое большое значение в оставшихся. ИСПОЛЬЗУЯ ПРОЦЕДУРЫ.

немного условие не понятно...тоесть нужно найти в массиве максимальный и его отсеять?
можно пример??


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
80 | Автор: Berestovskiy | 2011-04-10, 23:16   |  Репутация: [ + 211 ]
Форум ПРОГРАММИСТОВ » ПРОГРАММИРОВАНИЕ » Паскаль » Решения задач на Паскале!Срочно нужно!
Поиск: