Форум программистов, компьютерный форум, киберфорум
Наши страницы

Pascal (Паскаль)

Войти
Регистрация
Восстановить пароль
 
bekbolat16
8 / 8 / 0
Регистрация: 26.12.2009
Сообщений: 28
#1

Таблица футбольного чемпионата - Pascal

26.12.2009, 09:17. Просмотров 916. Ответов 8
Метки нет (Все метки)

Таблица фудбольного чемпионата задана квадратной матрицей порядка n,в которой все элементы, преднолежащие главной диогонали, равны нулю,а каждый элемент, не предналежащий главной диогонали, равен 2, 1 или 0 (числу очков, набронных в игре: 2- выигрыш,1- ничья, 0- проигрыш). найтичисло команд имеющих больше побед чем порожений

Добавлено через 15 минут
помогите речить!!!!

Добавлено через 25 секунд
очень надо!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2009, 09:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Таблица футбольного чемпионата (Pascal):

таблица футбольного чемпионата - Pascal
никто не сталкивался с такой задачкой??? тфблица футбольного чемпионата задана квадратной матрицей порядка n, в которой все элементы,...

Таблица футбольного чемпионата - Pascal
Здравствуйте, очень нужна помощь ваша. Помогите с задачей, пожалуйста. Для меня очень сложная, т.к. я новичок в паскале, но задали её. ...

Известна таблица футбольного чемпионата - Pascal
Известна таблица футбольного чемпионата и список команд-участниц. В каждой строке таблицы записано количество очков, полученных...

Таблица футбольного чемпионата. Обработать результаты - Turbo Pascal
Таблица футбольного чемпионата задана в виде двумерного массива n строк и n столбцов, в котором все элементы принадлежащие главной...

Таблица футбольного чемпионата - VBA
Часть работы сделал,не могу сделать с VBA и элементами управления. Кто может подсказать , как сделать .?

Таблица футбольного чемпионата - C++
Ребята! Пожалуйста помогите в Turbo C++ сделать! Очень прошу... Таблица футбольного чемпионата задана квадратной матрицей порядка n, в...

8
Puporev
Модератор
52370 / 40217 / 13559
Регистрация: 18.05.2008
Сообщений: 92,942
26.12.2009, 10:32 #2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
uses crt;
const max=20;{больше на экран не войдет}
var tabl:array [1..max,1..max] of byte;{матрица}
    n,i,j,k,pb,pr:byte;{идексы}
begin
clrscr;
repeat
write('Введите число команд не более ',max,' n=');
readln(n);
until n in [1..max];
randomize;
{заполняем случайно верхнюю часть таблицы}
for i:=1 to n do
for j:=1 to n do
if j>i then tabl[i,j]:=random(3);
{заполняем симметрично нижнюю часть таблицы}
for i:=1 to n do
for j:=1 to n do
 begin
  if j<i then tabl[i,j]:=2-tabl[j,i];
  if i=j then tabl[i,j]:=0;
 end;
Writeln('Таблица:');
k:=0;
{выводим получившуюся матрицу}
for i:=1 to n do
 begin
  pb:=0;pr:=0;
  for j:=1 to n do
   begin
    if tabl[i,j]=2 then pb:=pb+1;
    if (tabl[i,j]=0)and(i<>j) then pr:=pr+1;
    write(tabl[i,j]:4);
   end;
  if pb>pr then k:=k+1;
  write('  поб=',pb,' пор.=',pr);
  writeln;
 end;
writeln('Количество команд, у которых побед больше чем поражений=',k);
readln
end.
0
bekbolat16
8 / 8 / 0
Регистрация: 26.12.2009
Сообщений: 28
26.12.2009, 21:13  [ТС] #3
rahmet!!
0
niklajjslvnv
0 / 0 / 0
Регистрация: 18.01.2010
Сообщений: 16
29.04.2010, 19:02 #4
а как сделать что бы она " Определяла номера команд, прошедших чемпионат без поражений"
очень надо
0
Puporev
Модератор
52370 / 40217 / 13559
Регистрация: 18.05.2008
Сообщений: 92,942
29.04.2010, 19:09 #5
Pascal
1
2
3
4
5
6
7
8
writeln('Команды без поражений:');
for i:=1 to n do
 begin
  k:=0;
  for j:=1 to n do
  if tabl[i,j]<2 then k:=1;
  if k=0 then writeln('Команда ',i);
 end;
1
niklajjslvnv
0 / 0 / 0
Регистрация: 18.01.2010
Сообщений: 16
29.04.2010, 19:48 #6
спасибо
0
niklajjslvnv
0 / 0 / 0
Регистрация: 18.01.2010
Сообщений: 16
14.05.2010, 00:02 #7
а как сделать что бы еще счет вводить с которым съиграли команды?
0
Puporev
Модератор
52370 / 40217 / 13559
Регистрация: 18.05.2008
Сообщений: 92,942
14.05.2010, 06:28 #8
Вот когда-то давно писал, довольно неграмотно, но идею можно почерпнуть.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
uses crt;
const n=18;
type St=string[3];
function Schet(p,q:byte):St;{рисование счета}
var sp,sq:string;
begin
str(p,sp);str(q,sq);
Schet:=sp+':'+sq;
end;
function Itog(s:St):byte;{подсчет результатов}
begin
if s[1]>s[3] then Itog:=2
else if s[1]=s[3] then Itog:=1
else if s[1]<s[3] then Itog:=0;
end;
function Revers(a:St):St;{переворот счета для второй команды}
var i:integer;
    a1:St;
begin
a1:='';
for i:=length(a) downto 1 do
a1:=a1+a[i];
Revers:=a1;
end;
 
var a:array[1..n*(n-1)div 2]of St;
    b:array[1..18,1..18]of St;
    i,j,k,m,p,kv,kn,kp:byte;
    x,y:array[1..n*(n-1)]of byte;
 
begin
textbackground(15);
clrscr;
randomize;
for i:=1 to n*(n-1)div 2 do{набираем случайный счет для половины результатов}
   begin
    x[i]:=random(6);
    y[i]:=random(6);
    a[i]:=Schet(x[i],y[i]);
   end;
for j:=1 to n do{заполняем верхнюю часть таблицы}
for k:=j+1 to n do
  begin
    m:=k+(n-j-1)*(j-1);
    b[j,k]:=a[m];
  end;
for j:=1 to n do{нижнюю часть}
for k:=1 to j-1 do
b[j,k]:=Revers(b[k,j]);
writeln('Turnirnaya tablica':45);{рисуем саму таблицу}
for j:=1 to n do
  begin
    for k:=1 to n do
    if k=j then
      begin
       Textcolor(0);
       write(chr(178),chr(178),chr(178),' ');
      end
    else if Itog(b[j,k])=0 then
      begin
       Textcolor(0);
       write(b[j,k],' ');
      end
    else if Itog(b[j,k])=1 then
      begin
       Textcolor(3);
       write(b[j,k],' ');
      end
    else if Itog(b[j,k])=2 then
      begin
       Textcolor(12);
       write(b[j,k],' ');
      end;
    writeln;
  end;
readln;
Textcolor(0);
for j:=1 to n do
  begin
    kp:=0;kn:=0;kv:=0;
    for k:=1 to n do
      begin
       if j<>k then
         if Itog(b[j,k])=0 then kp:=kp+1
         else if Itog(b[j,k])=1 then kn:=kn+1
         else if Itog(b[j,k])=2 then kv:=kv+1;
      end;
    writeln('U komandy ',j:2,' ',kv:2,' vyigr ',kn:2,' nich ',kp:2,' poraz');
  end;
readln
end.
1
niklajjslvnv
0 / 0 / 0
Регистрация: 18.01.2010
Сообщений: 16
14.05.2010, 19:32 #9
спасибо
0
14.05.2010, 19:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.05.2010, 19:32
Привет! Вот еще темы с ответами:

Таблица футбольного чемпионата - C++
Всем привет, нужна помощь. Таблица футбольного чемпионата задана в виде двумерного массива из n строк и n столбцов, в котором все...

Таблица футбольного чемпионата . - Delphi
Таблица футбольного чемпионата задана в виде двумерного массива из п строк и п столбцов, в котором все элементы, принадлежащие главной...

Таблица футбольного чемпионата задана квадратной матрицей - C (СИ)
Таблица футбольного чемпионата задана квадратной матрицей порядка n, в которой все элементы, принадлежащие главной диагонали равны 0, а...

Задание на двумерный массив: Таблица футбольного чемпионата - C++
Таблица футбольного чемпионата задана квадратной матрицей порядка n, в которой все элементы, принадлежащие главной диагонали, равны нулю,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru