Консультация № 193283
19.05.2018, 00:53
0.00 руб.
0 4 1
Здравствуйте! Прошу помощи в следующем вопросе:
1) нужно создать определенный список, который будет состоять из имени и фамилий учащихся и т.п. и вывести это все на экран. Далее нужно вывести фамилии и имена всех студентов, стоящих по списку на позициях кратных 5.
2) В текстовом редакторе создать файл, который нужно занесити координаты треугольника. Вычислить биссектрису Wa и радиус описанной окружности R, используя образованный файл.

Обсуждение

давно
Старший Модератор
31795
6196
21.05.2018, 17:13
общий
21.05.2018, 17:13
Адресаты:
1) уточните задание, определенный список, в паскале подразумевает использование динамических переменных(списков(стеков, очередей), односвязаных, двухсвязаных, N-связанных), покажите пример списка.
2) уточните задание, в файле могут хранится как, целые, так и вещечтвенные числа, покажите пример входных данных.

ps:задавайте один вопрос в одном вопросе, два и больше, если они как-то связаны между собой
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

давно
Старший Модератор
31795
6196
21.05.2018, 21:05
общий
Адресаты:
1)

Цитата: lalka
в лазарусе

ркжим совсестимости с ТР
[code lang=pascal h=300]program Project1;
type
tStr=string[20];
pRec=^tRec;
tRec=record
name:tStr;
surname:tStr;
{тут можно ещё кучу параметром забить}
next:pRec
end;
var
head,temp:pRec;
a:tStr;
count:integer;
begin
head:=nil;
repeat
write('Enter name:');readln(a);
if length(a)>0 then
begin
new(temp);
temp^.name:=a;
write('Enter surname:');readln(temp^.surname);
writeln('Enter one:');{}
writeln(' . . . ');{}
writeln('Enter ten:');{}
temp^.next:=head;
head:=temp;
end;
until length(a)=0;
{}
writeln('All pioners :)');
temp:=head;
count:=0;
while temp<>nil do
begin
inc(count);
writeln(count:5,temp^.name:25,temp^.surname:25);
temp:=temp^.next;
end;
{}
if count<10 then writeln('small count')
else
begin
writeln('1/5 pioners :)');
temp:=head;
while temp<>nil do
begin
if count mod 5 = 0 then writeln(count:5,temp^.name:25,temp^.surname:25);
dec(count);
temp:=temp^.next;
end;
end;
{}
temp:=head;
while temp<>nil do
begin
head:=head^.next;
dispose(temp);
temp:=head;
end;
readln;
end.[/code]
С помощью динамических переменных, реализован список-стек.

Если есть возможность выложите свою методичку, чьлбы понимать Ваш уровень и текущую тему.



Шановний, а ще все, потрiбно було зробити, за допомогою файлiв, про що панове, Ви промовчали.
Прикрепленные файлы:
143ed3864b39757be29b568f93d9f932.jpg
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

давно
Старший Модератор
31795
6196
21.05.2018, 21:09
общий
Адресаты:
не ту картинку загрузил
Прикрепленные файлы:
74e6992788b072c391fb2a6c97a5eefb.jpg
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

давно
Старший Модератор
31795
6196
28.05.2018, 16:15
общий
это ответ
Здравствуйте, lalka!

1)
[code lang=pascal h=200]program Project1;
type
tStr=string[20];
pRec=^tRec;
tRec=record
name:tStr;
surname:tStr;
{тут можно ещё кучу параметром забить}
next:pRec
end;
var
head,temp:pRec;
a:tStr;
count:integer;
begin
head:=nil;
repeat
write('Enter name:');readln(a);
if length(a)>0 then
begin
new(temp);
temp^.name:=a;
write('Enter surname:');readln(temp^.surname);
writeln('Enter one:');{}
writeln(' . . . ');{}
writeln('Enter ten:');{}
temp^.next:=head;
head:=temp;
end;
until length(a)=0;
{}
writeln('All pioners :)');
temp:=head;
count:=0;
while temp<>nil do
begin
inc(count);
writeln(count:5,temp^.name:25,temp^.surname:25);
temp:=temp^.next;
end;
{}
if count<10 then writeln('small count')
else
begin
writeln('1/5 pioners :)');
temp:=head;
while temp<>nil do
begin
if count mod 5 = 0 then writeln(count:5,temp^.name:25,temp^.surname:25);
dec(count);
temp:=temp^.next;
end;
end;
{}
temp:=head;
while temp<>nil do
begin
head:=head^.next;
dispose(temp);
temp:=head;
end;
readln;
end.[/code]

2)
[code lang=pascal h=200]type
point=record
x,y:real
end;
var
a,b,c:point;
ab,ac,bc:real;
f:text;
p:real;
function r(a,b:point):real;
begin
r:=sqrt(sqr(a.x-b.x)+sqr(a.y-b.y));
end;
begin
assign(f,'180528.txt');
reset(f);
readln(f,a.x,a.y,b.x,b.y,c.x,c.y);
close(f);
ab:=r(a,b);
ac:=r(a,c);
bc:=r(b,c);
p:=(ab+ac+bc)/2;
writeln('radius:=',ab*ac*bc/(4*sqrt(p*(p-ab)*(p-ac)*(p-bc))));
writeln('bisector:=',sqrt(ab*ac*(ab+ac+bc)*(ab+ac-bc))/(ab+ac));
readln;
end.[/code]

Удачи!
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

Форма ответа