Написание функций |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Написание функций |
predikat |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 23 Пол: Мужской Репутация: 0 |
Я учусь на програмиста. До зачетов осталось мало, а проги все не здал.
Можете помочь? 6_2: Написать программу, которая содержит функцию next без параметров, которая читает из входящего файла первую букву, отличную от space, и объявляет её своим значением. Использовать эту функцию для подсчёта k - количества отличных от space букв текста, который заданый в входящем файле, который заканчиваеться точкой. 6_8: Написать программу, в которой описано функцию Sum(A,S1,S2), которая вычисляет сумму тех элементов матрицы А, номера рядов и столбцов которые принадлежат соответственно непустым множествам S1 и S2. ОЧЕНЬ ПРОШУ!!! В следующий раз называй тему, как положено... Сообщение отредактировано: volvo - |
volvo |
Сообщение
#2
|
Гость |
predikat
Вот первая (если у тебя тестовый файл состоит из нескольких строк, учти, что перенос строки - 2 символа (#10 и #13))... Код var f: text; function next: char; var ch: char; begin repeat read(f, ch); until ch <> #32; next := ch end; var ch: char; count: word; begin assign(f, 'test99.txt'); reset(f); count := 0; repeat ch := next; inc(count) until ch = '.'; writeln('count = ', count); close(f); end. |
predikat |
Сообщение
#3
|
Новичок Группа: Пользователи Сообщений: 23 Пол: Мужской Репутация: 0 |
Вторую я постараюсь сделать сам. помогите пожалуйсто с этой:
9_22: Написать программу, которая использует информацию в таблице FAT и распечатывает список файлов корневого каталога диска C: в формате: имя файла, тип, время и дата создания, начальный кластер, размер и указанные атрибуты: а) h; б) s; в) h и s; г) r. Сравнить полученные результаты с результатами выполнения команды dir. |
predikat |
Сообщение
#4
|
Новичок Группа: Пользователи Сообщений: 23 Пол: Мужской Репутация: 0 |
Помогите пожалуйсто написать под эту программу коментарии.
Код program matrix; uses crt; type mas=array[1..9,1..9] of integer; s=set of 0..9; var a:mas; summ,x,y,i,j:integer; const s1:s=[2,3]; s2:s=[1,3]; function Sum(A:mas; S1,S2:s):integer; var i,j,ss:integer; begin ss:=0; for i:=1 to x do if i in S1 then for j:=1 to y do if j in S2 then ss:=ss+A[i,j]; sum:=ss; end; procedure form_mn(var s1:s; x:byte); var k:byte; begin writeln('Закончите ввод нажатием 0'); writeln('Введите ряды/столбцы от 1 до ',x); s1:=[]; repeat writeln('Введите цифру <=',x); readln(k); if k<>0 then s1:=s1+[k]; if (k<0) or (k>x) then writeln('Превышен диапозон'); until (k=0); end; procedure init_mas(var a:mas; x,y:byte);{x - Є®«ЁзҐбвў® бва®Є} var i,j:byte; begin writeln('Введите элементы массива'); for i :=1 to x do begin writeln('Введите элементы', i, ' строки'); for j:=1 to y do read(a[i,j]); readln; end; end; procedure show_mas(a:mas; x,y:byte); var i,j:byte; begin writeln('Массив ',x,'x',y); for i:=1 to x do begin for j:=1 to y do write(a[i,j]:4); writeln; end; end; begin clrscr; repeat writeln('‚Введите количество столбцов x <=9'); readln(x); until x<=9; repeat writeln('Введите количество рядков y <=9'); readln(y); until y<=9; init_mas(a,x,y); show_mas(a,x,y); writeln('М Н О Ж Е С Т В О Р Я Д О В'); form_mn(s1,x); writeln('М Н О Ж Е С Т В О С Т О Л Б Ц О В'); form_mn(s2,y); summ:=sum(a,s1,s2); writeln('Сумма равна ', summ); readln; end. Сообщение отредактировано: predikat - |
volvo |
Сообщение
#5
|
Гость |
predikat
Программу надо давать в виде текста (используя теги [ code] и [ /code] без пробела)... Как ты думаешь, я сейчас буду набирать всю твою программу, чтобы ее проверить и добавить комментарии? И никто не будет... |
predikat |
Сообщение
#6
|
Новичок Группа: Пользователи Сообщений: 23 Пол: Мужской Репутация: 0 |
Цитата(volvo @ 15.12.04 10:58) predikat Программу надо давать в виде текста (используя теги [ code] и [ /code] без пробела)... Как ты думаешь, я сейчас буду набирать всю твою программу, чтобы ее проверить и добавить комментарии? И никто не будет... Извините, я пропарился. Я не знал что pas можно открывать txt. Всё исправил. Прошу помощи. Особенно по 9_22!!! Ещё очень прошу помочь написать отчеты для этих прог. ОЧЕНЬ: Код program students; uses crt; const n=5; type parameters=record surname:string[25]; group:string[4]; mark:real; end; var st:array[1..n] of parameters; j,i:integer; s:parameters; begin clrscr; for i:=1 to n do begin write('Enter the surname of student: '); readln(st[i].surname); write('Enter the number of group: '); readln(st[i].group); write('Enter his average mark: '); readln(st[i].mark); end; begin for i:=1 to n-1 do for j:=i to n do if st[i].mark<st[j].mark then begin s:=st[i]; st[i]:=st[j]; st[j]:=s; end; end; writeln; writeln('your list...'); writeln; for i:=1 to n do with st[i] do begin write('Surname: ',sruname,'Group: ',group,'Mark: ', mark:1:2); writeln; end; repeat until keypressed; end. Код program text_file; var f:text; function next: char; var ch: char; begin repeat read(f,ch); until ch<> #32; next := ch end; var ch: char; count: word; begin assign(f, 'test99.txt'); reset(f); count := 0; repeat ch:=next; inc(count) until ch = '.'; writeln('count = ', count); close(f); end. Код program modul; uses of_modul; var Sinp, Sout: String; begin write('Enter the string: '); readLn(Sinp); Upstring(Sinp,Sout); Writeln(' Result: ', Sout) end. _______________________________ Unit of_modul; Interface Procedure UpString(s1: string; var s2: string); Implementation procedure upstring; var i: integer; c: char; begin s2:= ''; for i:= 1 to Length(s1) do begin c:= s1[i]; if (c>= 'a') and (c <= 'z') then c:= chr(ord('A')+ord(c)-ord('a')) end end; end. Сообщение отредактировано: predikat - |
Текстовая версия | 11.01.2025 8:44 |