• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Студентам. Помощь в программировании

  • Автор темы Автор темы Matrix
  • Дата начала Дата начала
Статус
В этой теме нельзя размещать новые ответы.
Здравствуйте помогите пожалуйста срочно решить паскалевские задачи!
1)Дан файл, содержащий текст, и некоторые буквы. Найти слово, содержащее наибольшее количество указанных букв.

Прикину на досуге. Пока некогда.

2)Среди работников данного предприятия найти тех, чья заработная плата за месяц ниже средней по предприятию, а также распечатать список тех, кто проработал на предприятии более 10 лет, с указанием их фамилии, зарплаты, стажа работы и должности.

Мало информации. Нужна исходная база данных по работникам предприятия. В каком она виде? Таблица? Массив записей? Или ее нужно тоже формировать самостоятельно?

3)Даны два массива. Найти число различных элементов и указать их порядковые номера. Если таковых не имеется – сообщить об этом.

Эту давайте-ка самостоятельно. Детский сад.
 
2)Среди работников данного предприятия найти тех, чья заработная плата за месяц ниже средней по предприятию, а также распечатать список тех, кто проработал на предприятии более 10 лет, с указанием их фамилии, зарплаты, стажа работы и должности.

Мало информации. Нужна исходная база данных по работникам предприятия. В каком она виде? Таблица? Массив записей? Или ее нужно тоже формировать самостоятельно?

Самому нужнно вводить зароботную плату и через эти данные нужно найти среднию!!!
вот я начал был решать и неполучаеться и одного условия нет!!! вот примерно псмотрите!!!
program vtoroiBlok;
const n=10;
type pa6otnik=record
famili9:string[20];
zarplata:integer;
cTa>|<_pabotb|:integer;
DoJI>|<Hoctb:string[10];
end;
mas=array[1..n] of pa6otnik;
var
v:mas;
i,k,nn:integer;
{s:string;}
begin
write('Vvedute kol=');
readln(nn);
for i:=1 to nn do
begin
write('vvedite famili9 ',i,' pa6otnik='); readln(v.famili9);
write('vvedite zarplata ',i,' pa6otnik='); readln(v.zarplata);
write('vvedite cTa>|<_pabotb| ',i,' pa6otnik
='); readln(v.cTa>|<_pabotb|);
write('vvedite DoJI>|<Hoctb ',i,' pa6otnik='); readln(v.DoJI>|<Hoctb);
end;
write('kotorb|e pabotali bolee 10 let ');
{readln(s); }
k:=0;
for i:=1 to nn do
if v.cTa>|<_pabotb|='10' then begin with v do begin
write(i,' ',famili9,' ');
writeln(zarplata,' ');
writeln(cTa>|<_pabotb|,' ');
writeln(DoJI>|<Hoctb,' ');
end;
k:=k+1; end;
write('Kol-vo pabotnikov ctaj rabotb| bolee 10 let =',k);
readln;
end.
 
2)Среди работников данного предприятия найти тех, чья заработная плата за месяц ниже средней по предприятию, а также распечатать список тех, кто проработал на предприятии более 10 лет, с указанием их фамилии, зарплаты, стажа работы и должности.

Мало информации. Нужна исходная база данных по работникам предприятия. В каком она виде? Таблица? Массив записей? Или ее нужно тоже формировать самостоятельно?

Самому нужнно вводить зароботную плату и через эти данные нужно найти среднию!!!
вот я начал был решать и неполучаеться и одного условия нет!!! вот примерно псмотрите!!!
program vtoroiBlok;
const n=10;
type pa6otnik=record
famili9:string[20];
zarplata:integer;
cTa>|<_pabotb|:integer;
DoJI>|<Hoctb:string[10];
end;
mas=array[1..n] of pa6otnik;
var
v:mas;
i,k,nn:integer;
{s:string;}
begin
write('Vvedute kol=');
readln(nn);
for i:=1 to nn do
begin
write('vvedite famili9 ',i,' pa6otnik='); readln(v.famili9);
write('vvedite zarplata ',i,' pa6otnik='); readln(v.zarplata);
write('vvedite cTa>|<_pabotb| ',i,' pa6otnik
='); readln(v.cTa>|<_pabotb|);
write('vvedite DoJI>|<Hoctb ',i,' pa6otnik='); readln(v.DoJI>|<Hoctb);
end;
write('kotorb|e pabotali bolee 10 let ');
{readln(s); }
k:=0;
for i:=1 to nn do
if v.cTa>|<_pabotb|='10' then begin with v do begin
write(i,' ',famili9,' ');
writeln(zarplata,' ');
writeln(cTa>|<_pabotb|,' ');
writeln(DoJI>|<Hoctb,' ');
end;
k:=k+1; end;
write('Kol-vo pabotnikov ctaj rabotb| bolee 10 let =',k);
readln;
end.


Так, ну сразу видно - в 10-й снизу строке 2 ошибки:
1. Почему условие равенства? Надо ">".
2. Стаж работы вы задали, как INTEGER-тип, а не STRING, а поэтому брать 10 в кавычки - ошибка.
Отсюда условие должно быть таким:
if v.cTa>|<_pabotb|>10 then
Но, между прочим, всё равно будет сообщение об ошибке! Потому что у Вас, скажем так, весьма своеобразные идентификаторы. Ну как, скажите, бедному компьютеру разобраться, какой из знаков "<", ">" относится к условию, а какой описывает русскую букву "ж"? Поэтому уберите-ка все значки типа "<", ">", "|" из идентификаторов переменных и постарайтесь обойтись обычным транслитом. Выпендреж до добра не доведет.
В остальном вроде всё верно.
Дальше нужно прокрутить еще пару аналогичных циклов. Первый - чтобы определить среднюю зарплату, второй - чтобы выявить низкооплачиваемых работников. Нужно будет ввести переменную средней зарплаты.
 
Люди помогите решить задачи на PASCAL-е. Заранее спосибо.

1) Дан файл, содержащий текст. Определить, сколько раз встречается в нем самое короткое слово.

VAR
f,f1,f2:TEXT;
S,Sh_Word:STRING;
Sh_Lng:BYTE;
Sh_Num:WORD;
Ch:Char;
BEGIN
Assign(f,'D:\Txt');
ReSet(f);
Assign(f1,'D:\TTT');
ReWrite(f1);
Assign(f2,'D:\TXX');
ReWrite(f2);
REPEAT
Read(f,Ch);
IF (Ch=' ') OR (Ch='.') OR (Ch=',') OR (Ch='!') OR (Ch='?')
OR (Ch=':') OR (Ch=';') OR (Ch='(') OR (Ch=')') OR (Ch='-')
THEN Writeln(f1) ELSE Write(f1,Ch);
UNTIL EoF(f);
Close(f);
Close(f1);
ReSet(f1);
REPEAT
Readln(f1,S);
IF S<>'' THEN WriteLn(f2,S);
UNTIL EoF(f1);
Close(f1);
Close(f2);
ReSet(f2);
Sh_Lng:=255;
REPEAT
Readln(f2,S);
IF Length(S)<Sh_Lng THEN
BEGIN
Sh_Lng:=Length(S);
Sh_Word:=S;
END;
UNTIL EoF(f2);
ReSet(f2);
Sh_Num:=0;
REPEAT
Readln(f2,S);
IF S=Sh_Word THEN INC(Sh_Num);
UNTIL EoF(f2);
Close(f2);
Erase(f1);
Erase(f2);
Writeln('The shortest word "',Sh_Word,'" is ',Sh_Num,' times recurred');
Readln;
END.
 
Vladimir_S , большое спосибо .
 
Vladimir_S: Спасибо большое за предыдущую подсказку у меня получилось!!!
Помоги пожалуйста решить с файлами еще, воопще файлы плохо знаю(((
1)Дан файл, содержащий текст, и некоторые буквы. Найти слово, содержащее наибольшее количество указанных букв.
За ранее очень очень благодарен!!!
 
Vladimir_S: Спасибо большое за предыдущую подсказку у меня получилось!!!
Помоги пожалуйста решить с файлами еще, воопще файлы плохо знаю(((
1)Дан файл, содержащий текст, и некоторые буквы. Найти слово, содержащее наибольшее количество указанных букв.
За ранее очень очень благодарен!!!

Вот как-то так:

CONST
Let:ARRAY[1..4] of CHAR= ('а', 'е', 'и', 'ф');
VAR
f,f1,f2:TEXT;
S,Rich_Word:STRING;
i,j,k:INTEGER;
L_Num:WORD;
Ch:Char;
BEGIN
Assign(f,'D:\Txt');
ReSet(f);
Assign(f1,'D:\TTT');
ReWrite(f1);
Assign(f2,'D:\TXX');
ReWrite(f2);
REPEAT
Read(f,Ch);
IF (Ch=' ') OR (Ch='.') OR (Ch=',') OR (Ch='!') OR (Ch='?')
OR (Ch=':') OR (Ch=';') OR (Ch='(') OR (Ch=')') OR (Ch='-')
THEN Writeln(f1) ELSE Write(f1,Ch);
UNTIL EoF(f);
Close(f);
Close(f1);
ReSet(f1);
REPEAT
Readln(f1,S);
IF S<>'' THEN WriteLn(f2,S);
UNTIL EoF(f1);
Close(f1);
Close(f2);
ReSet(f2);
L_Num:=0;
REPEAT
Readln(f2,S);
k:=0;
FOR i:=1 TO Length(S) DO
FOR j:=1 TO 4 DO
IF S=Let[j] THEN INC(k);
IF k>L_Num THEN
BEGIN
L_Num:=k;
Rich_Word:=S;
END;
UNTIL EoF(f2);
Close(f2);
Erase(f1);
Erase(f2);
Writeln('The word "',Rich_Word,'" contains ',L_Num,' letters on payroll');
Readln;
END.
 
3)Напишите программу с подпрограммой для ввода с клавиатуры отрицательных чисел и возвращения количества введенных чисел и их суммы. Работа должна завершиться, когда вводится положительное число.

Не решаеться вообще :confused:
 
Не решаеться вообще :confused:

Извините, но задача настолько простая, что даже не интересно. И чему тут "не решаться"? Правда, я не очень понимаю, зачем нужна подпрограмма и куда ее воткнуть, но если по-простому, то:

VAR
SUM, Quantity:REAL;
Number:WORD;
BEGIN
Number:=0;
SUM:=0;
REPEAT
Write('Next quantity ');
Readln(Quantity);
IF Quantity<0 THEN
BEGIN
SUM:=SUM+Quantity;
Number:=Number+1;
Writeln(Number);
Writeln('Sum = ',SUM);
END;
UNTIL Quantity>0;
Writeln('Data input is finished');
Readln;
END.

Всё!!!
 
Последнее редактирование:
Помогите пожалуйста написать 3 задачи на Паскале (работа с записями)

1 задача. Сформировать запись, имеющую следующую структуру
type предмет=record
название:string; количество часов:integer; преподаватель:string; кафедра:string; форма отчетности:(зачет,экзамен); end;
и определить:
o преподавателя, у которого самое большое количество часов;
o список предметов, по которым сдают экзамен;
o кафедру и преподавателя, который ведет данный предмет.
2 задача. Составить программу, выводящую на экран инвентаризационную ведомость (инвентаризационный номер, наименование, дата учета)
3 задача. Определить и вывести на экран множество символов входящих одновременно в имя, отчество, и фамилию, введённые с клавиатуры
 
Помогите пожалуйста написать 3 задачи на Паскале (работа с записями)

1 задача. Сформировать запись, имеющую следующую структуру
type предмет=record
название:string; количество часов:integer; преподаватель:string; кафедра:string; форма отчетности:(зачет,экзамен); end;
и определить:
преподавателя, у которого самое большое количество часов;
список предметов, по которым сдают экзамен;
кафедру и преподавателя, который ведет данный предмет.
2 задача. Составить программу, выводящую на экран инвентаризационную ведомость (инвентаризационный номер, наименование, дата учета)
3 задача. Определить и вывести на экран множество символов входящих одновременно в имя, отчество, и фамилию, введённые с клавиатуры.
 
Помогите пожалуйста написать 3 задачи на Паскале (работа с записями)

1 задача. Сформировать запись, имеющую следующую структуру
type предмет=record
название:string; количество часов:integer; преподаватель:string; кафедра:string; форма отчетности: (зачет,экзамен); end;
и определить:
преподавателя, у которого самое большое количество часов;
список предметов, по которым сдают экзамен;
кафедру и преподавателя, который ведет данный предмет.
2 задача. Составить программу, выводящую на экран инвентаризационную ведомость (инвентаризационный номер, наименование, дата учета)
3 задача. Определить и вывести на экран множество символов входящих одновременно в имя, отчество, и фамилию, введённые с клавиатуры.
 
3 задача. Определить и вывести на экран множество символов входящих одновременно в имя, отчество, и фамилию, введённые с клавиатуры.

VAR
S1,S2,S3:STRING;
i,j,k:INTEGER;
BEGIN
Write('Name: '); Readln(S1);
Write('Patronymic: '); Readln(S2);
Write('Surname: '); Readln(S3);
FOR i:=1 TO Length(S1) DO
FOR j:=1 TO Length(S2) DO
FOR k:=1 TO Length(S3) DO
IF (S1=S2[j]) AND (S2[j]=S3[k]) THEN Write(S1+' ');
WriteLn;
ReadLn;
END.

Остальные задачи - самостоятельно. Рутинная работа.
P.S. И перестаньте дублировать посты - нарветесь на неприятности с администрацией.
 
Спасибо!но именно первые две я и не понял как делать???
 
Спасибо!но именно первые две я и не понял как делать???

Взять любой учебник по Паскалю и посмотреть, как работать с записями. Тем более, что в первой задаче запись практически описана.
 
Vladimir_S: спасибо большое за помощь я вам очень благодарен!!!
 
Уважаемый Vladimir_S!Прошу вас помочь мне с написанием проги на языке Турбо Паскаль.(самому непосильно).Тема проги:Объекты.

Написать программу хаотичного движения разноцветных снежинок(слева направо,снежинок не менее 10 штук).
 
Уважаемый Vladimir_S!Прошу вас помочь мне с написанием проги на языке Турбо Паскаль.(самому непосильно).Тема проги:Объекты.

Написать программу хаотичного движения разноцветных снежинок(слева направо,снежинок не менее 10 штук).

Помочь, к сожалению, не смогу. Объектно-ориентированного программирования так и не освоил - просто нужды в том не было.
 
помогите написать задачи на Паскале

1.Построить график указанной функции.






2.Изобразить кисть смородины с отпадающими ягодками
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху