Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.216.251.37] |
|
Страницы: (3) 1 [2] 3 все ( Перейти к последнему сообщению ) |
Сообщ.
#16
,
|
|
|
Хорошо, сейчас проверю.
|
Сообщ.
#17
,
|
|
|
Цитата Булат Шакиров @ пишет, что ошибка в выражении. курсор мигает на начале слова exclude |
Сообщ.
#18
,
|
|
|
Все правильно. И должно мигать. Exclude исключает один элемент из множества. Косяк мой.
вот так работает type language=(basic, pascal, prolog, clipper, c, logo); var a,b,d:set of language; begin a:=[]; d:=[]; include(a,pascal); a:=a+[basic]; d:=a+[logo]; b:=(a+d)-a*d; end. Добавлено То есть нужно найти объединение множеств, затем из него вычесть пересечение. проверяйте на своих данных |
Сообщ.
#19
,
|
|
|
Цитата Булат Шакиров @ То есть нужно найти объединение множеств, затем из него вычесть пересечение. проверяйте на своих данных пробую пока что то не выходит |
Сообщ.
#20
,
|
|
|
Бросьте сюда код
|
Сообщ.
#21
,
|
|
|
Цитата Булат Шакиров @ Бросьте сюда код program gr; uses crt; type s=(basik, paskal, prolog, cu, logo); x=set of s; yaz=array[1..5] of x; var i:s; m:yaz; g,t,t1,t2,t3,t4:x; k,j:integer; begin clrscr; writeln('1 basic'); writeln('2 paskal'); writeln('3 prolog'); writeln('4 cu'); writeln('5 logo'); for j:=1 to 3 do begin t:=[]; write('‚введите номера для',j,'-го вуза '); repeat read(k); case k of 1:i:=basik; 2:i:=paskal; 3:i:=prolog; 4:i:=cu; 5:i:=logo; end; t:=t+[i]; until eoln; m[j]:=t; end; ну вот то, что я изначально начал писать вы про этот код? |
Сообщ.
#22
,
|
|
|
Да. Поковыряюсь. Проверяйте
Добавлено program gr; uses crt; type s=(basik, paskal, prolog, cu, logo); x=set of s; yaz=array[1..5] of x; var i:s; m:yaz; g,t,t1,t2,t3,t4:x; k,j:integer; b:byte; begin clrscr; writeln('1 basic'); writeln('2 paskal'); writeln('3 prolog'); writeln('4 cu'); writeln('5 logo'); writeln('любая клавиша следущий вуз'); for j:=1 to 3 do begin t:=[]; write('введите номера для ',j,'-го вуза '); repeat read(k); case k of 1:t:=t+[basik]; 2:t:=t+[paskal]; 3:include(t,prolog); 4:t:=t+[cu]; 5:t:=t+[logo] else break; end; until false; b:=sizeof(t); m[j]:=t; t4:=(m[1]+m[2]+m[3])-(m[1]*m[2]*m[3]); end; end. |
Сообщ.
#23
,
|
|
|
Цитата Булат Шакиров @ не работает((( ошибку выдает Проверяйте program gr; uses crt; type s=(basik, paskal, prolog, cu, logo); x=set of s; yaz=array[1..5] of x; var i:s; m:yaz; g,t,t1,t2,t3,t4:x; k,j:integer; b:byte; begin clrscr; writeln('1 basic'); writeln('2 paskal'); writeln('3 prolog'); writeln('4 cu'); writeln('5 logo'); writeln('любая клавиша следущий вуз'); for j:=1 to 3 do begin t:=[]; write('введите номера для ',j,'-го вуза '); repeat read(k); case k of 1:t:=t+[basik]; <------- здесь выдает ошибку, несоответствие типа. 2:t:=t+[paskal]; 3:include(t,prolog); 4:t:=t+[cu]; 5:t:=t+[logo] else break; end; until false; b:=sizeof(t); m[j]:=t; t4:=(m[1]+m[2]+m[3])-(m[1]*m[2]*m[3]); end; end. |
Сообщ.
#24
,
|
|
|
Какую ошибку? Чего пишет? У меня в fpc отработал нормально.
|
Сообщ.
#25
,
|
|
|
Цитата Булат Шакиров @ Какую ошибку? Чего пишет? У меня в fpc отработал нормально. смотрите в пред сообщении, я в программе пометил где ошибка Добавлено Цитата Булат Шакиров @ Какую ошибку? Чего пишет? У меня в fpc отработал нормально. 1:t:=t+[basik]; <------- здесь выдает ошибку, несоответствие типа. |
Сообщ.
#26
,
|
|
|
Попробуйте
Include(t, basik); Добавлено Что за паскаль у вас? Какой-то странный. По виду вроде турбо, но с русским меню. Скачайте современный компилятор. |
Сообщ.
#27
,
|
|
|
Цитата Булат Шакиров @ Попробуйте Include(t, basik); так запускается, но результат то на экран она не выводит а нужно, чтобы вывелся результат, какие языки изучается только в одном вузе Добавлено Цитата Булат Шакиров @ Что за паскаль у вас? Какой-то странный. По виду вроде турбо, но с русским меню. Скачайте современный компилятор. Dos Box: турбо паскаль. у меня на винде 8 вроде только он работает просто |
Сообщ.
#28
,
|
|
|
Элементы множества нельзя выводить на экран. Исхитриться можно так:
http://comp-science.narod.ru/Progr/mn.htm Посмотрите процедуру print Современые компилятор паскаля - freepascal.org |
Сообщ.
#29
,
|
|
|
Цитата Булат Шакиров @ Элементы множества нельзя выводить на экран. ну по заданию надо вывести преподаватель же должен как то проверить мы на паре просто рассматривали похожую задачу, там выводился результат на экран Добавлено Цитата Булат Шакиров @ Посмотрите процедуру print хорошо. щас посмотрю Добавлено Цитата Булат Шакиров @ Элементы множества нельзя выводить на экран. Исхитриться можно так: http://comp-science.narod.ru/Progr/mn.htm Посмотрите процедуру print что то все равно не получается( |
Сообщ.
#30
,
|
|
|
Счас поковыряюсь
Добавлено program gr; uses crt; type s=(basik, paskal, prolog, cu, logo); names=array [s] of string[20]; x=set of s; yaz=array[1..5] of x; const NamesStr : Names =('basik', 'paskal', 'prolog', 'cu', 'logo'); var i:s; m:yaz; g,t,t1,t2,t3,t4:x; k,j:integer; begin clrscr; writeln('1 basic'); writeln('2 paskal'); writeln('3 prolog'); writeln('4 cu'); writeln('5 logo'); writeln('любая клавиша следущий вуз'); for j:=1 to 3 do begin t:=[]; write('введите номера для ',j,'-го вуза '); repeat read(k); case k of 1:include(t,basik); 2:include(t,paskal); 3:include(t,prolog); 4:include(t,cu); 5:include(t,logo) else break; end; until false; m[j]:=t; t4:=(m[1]+m[2]+m[3])-(m[1]*m[2]*m[3]); end; for i:=basik to logo do if i in t4 then writeln(NamesStr[(i)]); end. |