Procedure,function,string,record,set Of,fail., 10 задач !срочно! |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Procedure,function,string,record,set Of,fail., 10 задач !срочно! |
SpEctAtOr |
Сообщение
#1
|
Группа: Пользователи Сообщений: 9 Репутация: 0 |
7).Введены три массива положительных вещественных чисел А[1:5] B[1:8] C[1:6]
задается точность E: E=alfa для элемнтов массива А; E=betta для элементов массива В; E=gamma для элементов массива C; где alfa,betta,gamma -- произвольно заданные числа. для каждого элемента каждой матрицы вычисляются значения (корень третьей степени из а) , (корень третьей степени из в) , (корень третьей степени из с) следующим итерационным алгоритмом: 1. Y0=x 2. Y1=Y0-((Y0 в кубе)-X)/3*Y0 3. при |Y1-Y0|>E, Yo=Y1; повторение с п.2; при |Y1-Y0|<=E, Y1=Y0. Требуется для каждого массива определить номер элемента, для которого число итераций было минимальным. Отпечатать элементы того массива, для которого вычмсленный номер оказался наибольшим. 8).Заданы две матрицы действительных чисел А[5x5] u B[6x6]. Требуется составить программу вычисления новых матриц A' u B' по следующему алгоритму: 1. в каждой матрице роводится главная левая диагональ (сверху вниз и слева направо), в результате чего образуются две треугольные матрицы; 2. для матрицы А все элементы, расположенные в верхнем треугольнике, расположить в каждой строке в порядке убывания элементов слева направо; 3. для матрицы В требуется выполнить действия, определнные в п.2 относительно нижнего треугольника. Программа сортировки треугольной матрицы должна быть оформлена в виде процедуры. Выходным параметром этой процедуры должна быть матрица, полученная из исходной по алгоритму, описанному выше. 9).Дан текст из слов, разделенных произвольным числом пробелов. Определить число слов, начинающихся на ту же букву, что и третье слово. 10).Дан текст из слов, разделенных произвольным числом пробелов. Распечатать слова, имеющие две подряд идущие одинаковые гласные. 11).Дан список жильцов по форме: *ФИО*год рождения*месяц*день рождения* Распечатать в алфавитном порядке фамилии жильцов, которым к заданной дате исполнилось 18 лет. Использовать RECORD. 12).Дана таблица по форме: *ФИО*отметки о посещении 10-ти занятий (0-пропустил, 1-присутствовал)*оценки задач* Сформировать таблицу: *ФИО*количество пропусков*средний балл*количество задач*зачёт(незачёт). Зачёт ставится студентам, пропустившим не более 5 занятий, сделавших не менее 8 задач, в том числе №9 и №10, и имеющих не менее 4-х оценок "4" и "5". Использовать тип RECORD. 13).Дан текст из строчных латинских букв, за которыми следует точка. Напечатать все буквы, входящие в текст не менее двух раз. Использовать SET OF. 14).Из какого числа разных состоит целое положительное число N и каковы эти цифры. 15).Дан символический файл "F". Переписать компоненты файла "F" в файл "Q", заменив при этом букву "а" на букву "о", и первый и последний символ на "!". 16).Компонентами файла "F" являются целые числа СеСиЯ ГоРиТ ... Кто сделает задачи ОТБЛАГАДАРЮ ... мой e-mail dorgunu@mail.ru Кидать никого не собираюсь... |
GLuk |
Сообщение
#2
|
Профи Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: 0 |
1. Тогда ты не в тот раздел постишь...
2. Сам пробовал хоть одну сделать? 3. Я ща на шашлыки до понедельника, когда приеду может сделаю, без всяких денег, но ессесно лишь алгоритм, а ты делаешь практическую реализацию... 4. И что это за маты, товарисчи?? Относится к kile (Хаффман) в первую очередь. |
SpEctAtOr |
Сообщение
#3
|
Группа: Пользователи Сообщений: 9 Репутация: 0 |
Цитата 1. Тогда ты не в тот раздел постишь... 2. Сам пробовал хоть одну сделать? 3. Я ща на шашлыки до понедельника, когда приеду может сделаю, без всяких денег, но ессесно лишь алгоритм, а ты делаешь практическую реализацию... 4. И что это за маты, товарисчи?? Относится к kile (Хаффман) в первую очередь. заранее спасибо |
SpEctAtOr |
Сообщение
#4
|
Группа: Пользователи Сообщений: 9 Репутация: 0 |
Я ИСПРАВЛЯЮСЬ У ВАС НА ГЛАЗАХ =) ;)
СДЕЛАЛ САМ 13 ЗАДАЧУ НА МНОЖЕСТВА, МОЖЕТ ПРОВЕРИТЕ?! МОЖЕТ БЫТЬ ЕСТЬ ЧТО-ТО ЛИШНЕЕ В РЕШЕНИИ?! Код program zad_13; uses crt; Type A = set of'A' .. 'Z'; Var Text:string; mnletvh,mnletvh2:set of 'A'..'Z'; i:integer; Procedure Print(mn:A); Var let:char; Begin For let:='A' to 'Z' do If let in mn then writeln(let) End; Begin CLRSCR; writeln('BBEDITE text '); readln(text); mnletvh:=[]; mnletvh2:=[]; For i:=1 to length(text) do if text[i] in ['A'..'Z'] then if not(text[i] in mnletvh) then mnletvh:=mnletvh+[text[i]] else mnletvh2:=mnletvh2+[text[i]]; print(mnletvh2); readkey End. |
BlackShadow |
Сообщение
#5
|
Гость |
Строго и со вкусом Только, если процедура вызывается 1 раз, то может не надо её как процедуру оформлять? А, если всё таки так хочется, то опиши её как rocedure Print(Const mn:A) - так лучше будет
|
SpEctAtOr |
Сообщение
#6
|
Группа: Пользователи Сообщений: 9 Репутация: 0 |
Цитата Я ща на шашлыки до понедельника, когда приеду может сделаю, без всяких денег, но ессесно лишь алгоритм, а ты делаешь практическую реализацию... Цитата Строго и со вкусом Только, если процедура вызывается 1 раз, то может не надо её как процедуру оформлять? А, если всё таки так хочется, то опиши её как rocedure Print(Const mn:A) - так лучше будет спасибо за совет... |
GLuk |
Сообщение
#7
|
Профи Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: 0 |
2Spectator:
По последней цитате что-то не догнал краями?? Ща мне пока очень хреново... |
GLuk |
Сообщение
#8
|
Профи Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: 0 |
Вот, то что сделал:
Насчет задачи с треугольной матрицей: ее я решать не буду, матрицы заданы в лоб, надеюсь догадаешься. И в первой задаче итерационный алгоритм либо коряво написан, либо я еще пьян, либо чего-то не догоняю... Все задачи раскиданы по процедурам. Код Uses Crt; Type FIO = record Name:String; Year:Word; Month:Byte; Day:Byte; end; {‘в㤥вл} Students = record Name:String; Z:array [1..10] of Boolean; {Џ®бҐйҐЁп} Zz:array[1..10] of Byte; {ЋжҐЄЁ § § ¤ зЁ} end; Const N:LongInt = 1234567; S:String = ' '; FIOCnt = 20; G:Set of Char = ['Ђ','Ћ','…','“','ќ','ћ','џ','‰','›','?']; Alfa = 0.03; Beta = 0.004; Gamma = 0.01; Var F,Q:File; Ok:Boolean; i,j:LongInt; C:Char; R:array[1..FIOCnt] of FIO; Rr:FIO; Code:Integer; Z:array[1..FIOCnt] of Students; Pr,Rz:Byte; Sa,O4:Word; St:String; A:array[1..5] of Double; B:array[1..8] of Double; Cc:array[1..6] of Double; X,Y:Real; {----------------------------------------------------------} {?§ Є ЄЁе жЁда б®бв®Ёв 楫®Ґ зЁб«® N Ё Є®«ЁзҐбвў® нвЁе жЁда} Procedure DigitsCount; begin Str(N,S); WriteLn('—Ёб«® N б®бв®Ёв Ё§ ',Ord(S[0]),' жЁда - "',S,'"'); end; {----------------------------------------------------------} Procedure ReplaceA; {‡ ¬ҐЁвм ЎгЄўл Ђ Ћ, Ё Ї®бв ўЁвм !} begin Assign(F,'F'); Reset(F,1); Assign(Q,'Q'); ReWrite(Q,1); C:='!'; BlockWrite(Q,C,1); WriteLn('ЏҐаҐ§ ЇЁблў Ґ¬ д ©«...'); For i:=1 to FileSize(F)-2 do begin GotoXY(1,3); Write('ќ«Ґ¬Ґв ®¬Ґа ',i+1); BlockRead(F,C,1); If C='A' then C:='O'; BlockWrite(Q,C,1); end; C:='!'; BlockWrite(Q,C,1); Close(F); Close(Q); end; Procedure After18; begin Write(#13#10'‚ўҐ¤ЁвҐ ¤ вг ў д®а¬ ⥠(„„.ЊЊ.ѓѓѓѓ) Ё«Ё, Ґб«Ё § Ї ¤«®'#13#10+ +' ЎЁа вм, ¦¬ЁвҐ ‚ў®¤ (Ї® 㬫з. 12.08.1985): '); ReadLn(S); If S='' then S:='12.08.1985'; {} Val(Copy(S,1,Pos('.',S)-1),Rr.Day,Code); Delete(S,1,Pos('.',S)); Val(Copy(S,1,Pos('.',S)-1),Rr.Month,Code); Delete(S,1,Pos('.',S)); Val(S,Rr.Year,Code); Dec(Rr.Year,18); {‡ Ї®«пҐ¬ Ї®«п} For i:=1 to FIOCnt do With R[i] do begin S[0]:=Chr(Random(3)+10); S[1]:=Chr(Random(32)+128); {128-159} For j:=2 to Ord(S[0]) do S[j]:=Chr(Random(15)+160); {160-175} Name:=S; Year:=Random(50)+1956; Month:=Random(12)+1; Day:=Random(25)+1; { ўбпЄЁ© б«гз © :)} end; TextColor(White); WriteLn('‘ЇЁб®Є б®ўҐа襮«ҐвЁе:'); TextColor(LightGray); For i:=1 to FIOCnt do begin Ok:=False; If R[i].Year<Rr.Year then Ok:=True else If R[i].Year=Rr.Year then If R[i].Month<Rr.Month then Ok:=True else If R[i].Month=Rr.Month then If R[i].Day<=Rr.Day then Ok:=True; If Ok then begin WriteLn(R[i].Name,': ',R[i].Day,':',R[i].Month,':',R[i].Year); end; end; end; Procedure PureStudents; begin For i:=1 to FIOCnt do With Z[i] do begin {‘«гз ©®Ґ "Ё¬п"} S[0]:=Chr(10); S[1]:=Chr(Random(32)+128); {128-159} For j:=2 to Ord(S[0]) do S[j]:=Chr(Random(15)+160); {160-175} Name:=S; For j:=1 to 10 do If Random(50)<25 then begin Z[j]:=True; Zz[j]:=Random(2)+3; end else begin Z[j]:=False; Zz[j]:=Random(3)+3; end end; {‚®®ЎйҐ, Ў«пвм, гб«®ўЁҐ ¬®Ј Ўл Ё ®а¬ «м® ®д®а¬Ёвм #(} {’ Ў«Ёж : - ”?Ћ - Љ®«-ў® Їа®ЇгбЄ®ў - ЋЎйЁ© Ў «« - Љ®«-ў® § ¤ з - ‡ з/Ґ§.} {Љ®«-ў® аҐиҐле § ¤ з п в Є Ї®Ё¬ о??} {‘Є®аҐ© ўбҐЈ® ЁдЁЈ Ґ в Є, ® Є Є ®д®а¬Ё«, в Є Ё Ї®«гз ©...} {‘«гз © б ¤ҐбпвЄ ¬Ё б ¬ ўла ўЁў ©, в ¬ Ї аг бва®зҐЄ ¤®Ў ўЁвм} WriteLn(& #39;ЙНННННННННННННННННЛННННННННННЛНННННННН ННННННННЛННННННННННННННЛННННННН»'); WriteLn('є ”?Ћ є Џа®ЇгбЄЁ є ‘।Ё© Ў «« є Љ®«-ў® § ¤ з є ‡ зҐв є'); WriteLn(& #39;МНННННННННННННННННОННННННННННОНННННННН ННННННННОННННННННННННННОННННННН№'); For i:=1 to FIOCnt do With Z[i] do begin S:='є '+Name+' є '; Pr:=0; Rz:=0; Sa:=0; O4:=0; For j:=1 to 10 do begin If not Z[j] then Inc(Pr); Inc(Sa,Zz[j]); If Zz[j]>2 then Inc(Rz); If Zz[j]>=4 then Inc(O4); end; Str(Pr,St); {Љ®«-ў® Їа®ЇгбЄ®ў} S:=S+' '+St+' є'; Str(Sa DIV 10,St); {‘।Ё© Ў ««} S:=S+' '+St+' є'; Str(Rz,St); {Љ®«-ў® аҐиҐле § ¤ з} S:=S+' '+St+' є'; If (Zz[9]>=4) and (Zz[10]>=4) and (Rz>=8) and (Pr<=5) and (O4>4) then S:=S+' „Ђ є' else S:=S+' Ќ…’ є'; WriteLn(S); end; WriteLn(& #39;ИНННННННННННННННННКННННННННННКНННННННН ННННННННКННННННННННННННКНННННННј'); end; Procedure AOE; begin S:='„ ⥪бв Ё§ б«®ў а §¤Ґ«Ґле Їа®Ё§ў®«мл¬ зЁб«®¬ Їа®ЎҐ«®ў.'+ +' ‚뢥бвЁ б«®ў б Ё¤гйЁ¬Ё Ї®¤ап¤ ¤ўг¬п Ј« бл¬Ё. „«Ё®иҐҐҐ... ¦Ёў®в®Ґ.'; {“ЎЁа Ґ¬ "«ЁиЁҐ" Їа®ЎҐ«л} S:=S+' '; {Џа®ЎҐ« ў Є®жҐ бва®ЄЁ, ®Ўп§ в.} While Pos(' ',S)<>0 do Delete(S,Pos(' ',S),1); {„Ґ« Ґ¬ ЎгЄ®ўЄЁ Ў®«миЁ¬Ё} For i:=1 to Length(S) do If (Ord(S[i])>159) and (Ord(S[i])<176) then S[i]:=Chr(Ord(S[i])-32) else If (Ord(S[i])>223) and (Ord(S[i])<240) then S[i]:=Chr(Ord(S[i])-80); While Length(S)>1 do begin St:=Copy(S,1,Pos(' ',S)-1); Ok:=False; i:=1; While (i<Ord(St[0])) and (not Ok) do begin If (St[i] in G) and (St[i+1] in G) then Ok:=True; Inc(i); end; If Ok then begin Write(Copy(St,1,i-2)); TextColor(White); Write(Copy(St,i-1,2)); TextColor(LightGray); WriteLn(Copy(St,i+1,Length(S))); end; Delete(S,1,Pos(' ',S)); end; end; Procedure ThirdWordA; begin S:='„ ⥪бв Ё§ б«®ў а §¤Ґ«Ґле Їа®Ё§ў®«мл¬ зЁб«®¬ Їа®ЎҐ«®ў.'+ +' ЋЇаҐ¤Ґ«Ёвм зЁб«® б«®ў, зЁ ойЁебп вг ¦Ґ ЎгЄўг, зв® Ё ваҐвмҐ б«®ў®. ?и Є. ?¬г®¤ҐдЁжЁв.'; {“ЎЁа Ґ¬ "«ЁиЁҐ" Їа®ЎҐ«л} S:=S+' '; {Џа®ЎҐ« ў Є®жҐ бва®ЄЁ, ®Ўп§ в.} While Pos(' ',S)<>0 do Delete(S,Pos(' ',S),1); {„Ґ« Ґ¬ ЎгЄ®ўЄЁ Ў®«миЁ¬Ё} For i:=1 to Length(S) do If (Ord(S[i])>159) and (Ord(S[i])<176) then S[i]:=Chr(Ord(S[i])-32) else If (Ord(S[i])>223) and (Ord(S[i])<240) then S[i]:=Chr(Ord(S[i])-80); {“¤ «пҐ¬ ЇҐаўлҐ ¤ў б«®ў } Delete(S,1,Pos(' ',S)); Delete(S,1,Pos(' ',S)); C:=S[1]; {“¤ «пҐ¬ ваҐвмҐ} Delete(S,1,Pos(' ',S)); Rz:=0; While Length(S)>1 do begin St:=Copy(S,1,Pos(' ',S)-1); If St[1]=C then begin Inc(Rz); WriteLn(St); end; Delete(S,1,Pos(' ',S)); end; WriteLn('Љ®«ЁзҐбвў® б«®ў а ў® ',Rz); end; Procedure IterationCount; { ‚ўҐ¤Ґл ваЁ ¬ ббЁў Ї®«®¦ЁвҐ«мле ўҐйҐб⢥ле зЁбҐ« Ђ[1:5] B[1:8] C[1:6] § ¤ Ґвбп в®з®бвм E: E=alfa ¤«п н«Ґ¬в®ў ¬ ббЁў Ђ; E=betta ¤«п н«Ґ¬Ґв®ў ¬ ббЁў ‚; E=gamma ¤«п н«Ґ¬Ґв®ў ¬ ббЁў C; Ј¤Ґ alfa,betta,gamma -- Їа®Ё§ў®«м® § ¤ лҐ зЁб« . ¤«п Є ¦¤®Ј® н«Ґ¬Ґв Є ¦¤®© ¬ ваЁжл ўлзЁб«повбп § 票п (Є®аҐм ваҐв쥩 б⥯ҐЁ Ё§ ) , (Є®аҐм ваҐв쥩 б⥯ҐЁ Ё§ ў) , (Є®аҐм ваҐв쥩 б⥯ҐЁ Ё§ б) б«Ґ¤гойЁ¬ ЁвҐа жЁ®л¬ «Ј®аЁв¬®¬: 1. Y0=x 2. Y1=Y0-((Y0 ў ЄгЎҐ)-X)/3*Y0 3. ЇаЁ |Y1-Y0|>E, Yo=Y1; Ї®ўв®аҐЁҐ б Ї.2; ЇаЁ |Y1-Y0|<=E, Y1=Y0. ’ॡгҐвбп ¤«п Є ¦¤®Ј® ¬ ббЁў ®ЇаҐ¤Ґ«Ёвм ®¬Ґа н«Ґ¬Ґв , ¤«п Є®в®а®Ј® зЁб«® ЁвҐа жЁ© Ўл«® ¬ЁЁ¬ «мл¬. ЋвЇҐз в вм н«Ґ¬Ґвл в®Ј® ¬ ббЁў , ¤«п Є®в®а®Ј® ўлз¬б«Ґл© ®¬Ґа ®Є § «бп ЁЎ®«миЁ¬. } begin For i:=1 to 5 do A[i]:=Random(10); For i:=1 to 8 do B[i]:=Random(20); For i:=1 to 6 do Cc[i]:=Random(30); Sa:=0; A[1]:=27; For i:=1 to 5 do begin Y:=A[i]; X:=Y-(Y*Y-1)/3; Rz:=0; Repeat Inc(Rz); Y:=X; X:=Y-((Y*Y*Y)-A[i])/3*Y; Until Abs(X-Y)<Alfa; If Rz>Sa then Sa:=Rz; end; end; Begin ClrScr; Randomize; DigitsCount; ReplaceA; After18; PureStudents; AOE; ThirdWordA; IterationCount; End. |
SpEctAtOr |
Сообщение
#9
|
Группа: Пользователи Сообщений: 9 Репутация: 0 |
GLuk ЋѓђЋЊЌЋ… ‘ЏЂ‘?ЃЋЋЋЋЋ!!!ЋЋЋЋЋ!ЋЋ!Ћ!Ћ!ЋЋ!Ћ!Ћ!ЋЋ!Ћ!Ћ!Ћ!Ћ!Ћ!Ћ!Ћ!!!!
ЃЋ‹њ?Ћ… ‘ЏЂ‘?ЃЋЋЋЋЋЋЋЋЋЋ!Ћ!ЋЋ!Ћ!Ћ!Ћ!ЋЋЋЋЋЋЋЋЋЋ!!!!!!!!!!ЋЋЋЋЋЋЋ! |
GLuk |
Сообщение
#10
|
Профи Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: 0 |
Это спасибо по-японски?? ;)
Добавлено позже: А насчет 16 задачи - это из цикла додумай сам?? Сообщение отредактировано: GLuk - |
Altair |
Сообщение
#11
|
Ищущий истину Группа: Пользователи Сообщений: 4 825 Пол: Мужской Реальное имя: Олег Репутация: 45 |
GLuk монстр!
Столько нарешал. И не лень ему было! Повышу -ка рейтинг ему... -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
GLuk |
Сообщение
#12
|
Профи Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: 0 |
Я б еще и 16-ю решил, только вот сложная она слишком... ;)
|
-Spectator- |
Сообщение
#13
|
Гость |
Спасибо тебе нереальное!!! правда наверное долго я с этим спасибо затянул)))
но может именно благодаря тебе я дотянул до 5-го курса))) |
Текстовая версия | 25.04.2024 6:39 |