4. студентам была предложена анкета о том, знание каких из прочитанных курсов могут потребоваться в будущей работе. результаты анкетирования были занесены в файл. напишите программу создания файла анкетирования. список прочитанных курсов: анализ; и ; информатика; ; философия.
241
341
Ответы на вопрос:
Const c1=' анализ'; c2=' и '; c3='информатика'; c4=''; c5='философия'; var o: text; begin assignfile(o, 'output.dat'); rewrite(o); write(o,c1,'|',c2,'|',c3,'|',c4,'|',c5); closefile(o) end.
Решение в pascalabc.net 3.4 *** этот файл мы должны назвать nekkit20.pas *** *** после его компиляции будет создан модуль *** unit nekkit20; type tra=(string,integer); function rometoarab(s: string): integer; // перевод римских чисел (не больших mmmcmxcix) в арабские begin var ar: ='ivxlcdm'; var aa: =arr(1,5,10,50,100,500,1000); var n: =0; result: =0; foreach var c in s do begin var c1: =n; n: =aa[pos(c,ar)-1]; result+=n+(n> c1? -2*c1: 0) end; end; function equal(r: array of string; a: array of integer): sequence of tra; // возвращает последовательность кортежей // из массива римских чисел (массив r), // для которых есть соответствие в массиве арабских чисел (массив a) begin foreach var q in r do begin var n: =rometoarab(q); if a.indexof(n)> -1 then yield((q,n)) end end; end. *** а это другой файл с любым именем, кроме nekkit20 *** *** он обращается к молулю nekkit20 *** uses nekkit20; begin var sr: =arr('dxviii','lxiii','mii','xiv','lxxxviii','cxcvi'); var ar: =arr(14,98,196,1002,518,64,87); var r: =equal(sr,ar); if r.count=-1 then writeln('нет совпадений') else foreach var t in r do writeln(t[0],' = ',t[1]) end. *** контрольный пример *** dxviii = 518 mii = 1002 xiv = 14 cxcvi = 196
Популярно: Информатика
-
dia49724zyf08.08.2020 09:15
-
atleti09oz3yfh15.01.2023 17:58
-
zka20zka2002.12.2021 06:31
-
Deafandblind22.12.2020 21:15
-
homkagamaet01.09.2020 22:57
-
JodiRimmet2708.06.2020 01:06
-
Stasuyksuper0614.03.2022 15:45
-
алинкажемчуг31.10.2020 20:31
-
anastasiya11лет04.10.2021 04:57
-
tagirok452512.02.2022 15:22