24.12.2015, 15:56 | #1 (permalink) |
Новичок
Регистрация: 23.12.2015
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Задачи. Pascal, PascalABC
1.На мячиках в магазине игрушек изображены английские и русские буквы и цифры. Нужно отобрать для детского сада мячики с русскими буквами и цифрами, причем в детском саду одинаковых мячей быть не должно. Сформировать нужный набор и распечатать его 2.В ЭВМ поступают фамилии и результаты N участников соревнований по плаванию и их фамилии. Выдать на печать результаты трех лучших участников и их фамилии. Считать, что результаты регистрирует фотофиниш и результаты спортсменов различны. 3.В массиве данных найти номер (имя) месяца каждого года, когда температура была минимальной. (промежуточная задача: получить линейный массив, элементами которого являются минимальные значения температуры за каждый год). |
24.12.2015, 15:56 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Нужную информацию так же можно найти всего лишь прочитав аналогичные топики Массив годов и работа с числом. Pascal, PascalABC Задачи по Pascal Turbo Практические задачи на языке Pascal |
25.12.2015, 15:41 | #2 (permalink) | |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Цитата:
Код:
Const N=40; {balls in shop} Var S:set of Char; A:Array[1..N] of Char; i,M:Byte; Begin Randomize; S:=[]; Writeln('Balls in shop:'); for i:=1 to N do begin M:=Random(126); if M<10 then M:=M+48 else {0..9} if M<36 then M:=M+55 else {A..Z} if M<62 then M:=M+61 else {a..z} M:=M+130; {А..я} A[i]:=Chr(M); Write(A[i]+' '); end; Writeln('Balls for kindergarten:'); for i:=1 to N do if (((Ord(A[i])>47) and (Ord(A[i])<58)) or (Ord(A[i])>191)) and not(A[i] in S) then begin S:=S+[A[i]]; write(A[i]+' '); end; Readln End. |
|
27.12.2015, 13:12 | #3 (permalink) |
Новичок
Регистрация: 23.12.2015
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
2.В ЭВМ поступают фамилии и результаты N участников соревнований по плаванию и их фамилии. Выдать на печать результаты трех лучших участников и их фамилии. Считать, что результаты регистрирует фотофиниш и результаты спортсменов различны.
3.В массиве данных найти номер (имя) месяца каждого года, когда температура была минимальной. (промежуточная задача: получить линейный массив, элементами которого являются минимальные значения температуры за каждый год). Можете ещё помочь с ними, пожалуйста? |
27.12.2015, 18:22 | #4 (permalink) | |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Цитата:
Код:
Const N=12; Var Surn:Array[1..N] of String; Time:Array[1..N] of Real; TimeD:Real; SurnD:String; i,j:Byte; Begin for i:=1 to N do begin Write('Surname: '); Readln(Surn[i]); Write('Time: '); Readln(Time[i]); end; Writeln; for i:=1 to N-1 do for j:=1 to N-i do if Time[j]>Time[j+1] then begin TimeD:=Time[j]; Time[j]:=Time[j+1]; Time[j+1]:=TimeD; SurnD:=Surn[j]; Surn[j]:=Surn[j+1]; Surn[j+1]:=SurnD; end; Writeln('Best:'); for i:=1 to 3 do writeln(Surn[i]+' (',Time[i]:0:2,')'); Readln End. |
|
27.12.2015, 18:54 | #5 (permalink) | |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Цитата:
Код:
Const NofY=10; {number of years} Var T:Array[1..NofY,1..12] of Integer; Names:Array[1..12] of String; MinTemp:Array[1..NofY] of Integer; Jmin:Array[1..NofY] of Byte; i,j:Byte; Begin Names[1]:='January'; Names[2]:='February'; Names[3]:='March'; Names[4]:='April'; Names[5]:='May'; Names[6]:='June'; Names[7]:='July'; Names[8]:='August'; Names[9]:='September'; Names[10]:='October'; Names[11]:='November'; Names[12]:='December'; Randomize; Writeln('Temperatures:'); Writeln(' Jn Fb Mr Ap My Ju Jl Ag Sp Oc Nv Dc'); for i:=1 to NofY do begin write(i+2019); for j:=1 to 12 do begin T[i,j]:=-Abs(6-j)*6+Random(49); write(T[i,j]:4,' '); end; writeln; end; for i:=1 to NofY do begin Jmin[i]:=1; MinTemp[i]:=T[i,1]; for j:=2 to 12 do if T[i,j]<MinTemp[i] then begin MinTemp[i]:=T[i,j]; Jmin[i]:=j; end; end; writeln('Minimal:'); for i:=1 to NofY do writeln(i+2019,MinTemp[i]:6,' ',Jmin[i]:2,' ('+Names[Jmin[i]]+')'); Readln End. |
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|