Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/18: Рейтинг темы: голосов - 18, средняя оценка - 4.50
2 / 2 / 1
Регистрация: 31.03.2010
Сообщений: 17

Описать процедуру change (x,y,z)

20.10.2010, 21:57. Показов 3775. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
const n=20
type вектор:=array [1..n] of real;
Описать процедуру изм (x,y,z), которая в том из векторов x,y,z , где больше всего "-" элементов (считать, что такой вектор 1), все его "+" элементы заменяются на их кубы - если вектор z и на их обратные величины - если это вектор y.

Попробовал сделать задачу. Компилятор выдаёт ошибку в 18 и 22 строке аргументируя: "Error: Illegal assignment to for-loop variable "i" Не могу понять что он от меня хочет. Как возможно доработать программу? (вообще правильно написано?)

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
const n = 20;
type vector =  array [1..n] of real;
procedure change (Var x, y, z : vector);
Var i, mx, my, mz : integer;
Begin
   mx := 0; my := 0; mz := 0;
   for i := 1 to n do
   begin
      if x[i] < 0 then inc (mx);
      if y[i] < 0 then inc (my);
      if z[i] < 0 then inc (mz);
   end;
begin
   if (mx > mz) and (mx > my) then
      for i := 1 to n do
         if x[i] > 0 then x[i] := x[i]*x[i]*x[i]
      else if (mz > mx) and (mz > my) then
         for i:= 1 to n do
            if z[i] >0 then z[i] := z[i]*z[i]*z[i]
         else if (my > mx) and (my > mz) then
            for i:= 1 to n do
               if y[i] > 0 then y[i] := -y[i];
End;
end.
(на этом форуме была такая же задача, даже с таким же заголовком темы, но ответа на неё не было дано)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.10.2010, 21:57
Ответы с готовыми решениями:

Описать процедуру
Описать процедуру , которая для трех чисел осуществляет пере-распределение значений по правилу a&lt;=b&lt;=c. Зарание спасибо :)

Описать процедуру Minmax(X, Y ).
Описать процедуру Minmax(X, Y ), записывающую в переменную X минимальное из значений X и Y, а в переменную Y —максимальное из этих...

Описать процедуру ADDLeftDigit
Народ нужна помощь. Описать процедуру AddLeftDigit(D, K), добавляющую к целому положительному числу K слева цифру D (D — входной...

3
 Аватар для yamilramilev
267 / 258 / 47
Регистрация: 08.10.2009
Сообщений: 554
21.10.2010, 09:12
в 17 и 20 строке убери else и еще у тебя в задании не написано что делать с х если он имеет наибольшее количество ”-”
0
2 / 2 / 1
Регистрация: 31.03.2010
Сообщений: 17
05.11.2010, 19:44  [ТС]
Ап. Как-то написал задачу эту:

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
program lab6;
const n=20;
 type vector=array[1..n] of real;
 var x,y,z:vector;
 var i:integer;
 procedure poick(var x,y,z:vector);
 var kx,ky,kz:integer;
 begin
 kx:=0; ky:=0; kz:=0;
 for i:=1 to n do begin
             if x[i]<0 then kx:=kx+1;
             if y[i]<0 then ky:=ky+1;
             if z[i]<0 then kz:=kz+1;
             end;
             writeln('k   ',kx,'    ',ky,'   ',kz);
if (kx>ky) and (kx>kz) then
                       begin
                       for i:=1 to n do if x[i]>0 then x[i]:=x[i]*x[i]*x[i];
                       end
else  if (kz>ky) and (kz>kx) then
                       begin
                       for i:=1 to n do if z[i]>0 then z[i]:=z[i]*z[i]*z[i];
                       end
                       else for i:=1 to n do y[i]:=-y[i];
end;
 
 begin
   for i:=1 to n do read(x[i]);
   for i:=1 to n do read(y[i]);
   for i:=1 to n do read(z[i]);
   poick(x,y,z);
for i:=1 to n do write(x[i]:3:0,' '); writeln;
for i:=1 to n do write(y[i]:3:0,' '); writeln;
for i:=1 to n do write(z[i]:3:0,' ');
end.
И даже без ошибок компилируется. Но вот беда - на экран ничего не выводит. Мне посоветовали сделать процедуру для вывода, а как это сделать?
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
06.11.2010, 10:42
Pascal
1
2
3
for i:=1 to n do write(z[i]:3:0,' ');
readln //видимо в АВС писали, там это не нужно.
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.11.2010, 10:42
Помогаю со студенческими работами здесь

Описать процедуру Swap
нужна помощь!!! Вот условие: Описать процедуру Swap(X, Y), меняющую содержимое переменных X и Y (X и Y — вещественные параметры,...

Описать процедуру SortInc3
Помогите с процедурой Описать процедуру SortInc3(A, B, C), меняющую содержимое переменных A, B, C таким образом, чтобы их значения...

описать процедуру ClearMin(А,В)
описать процедуру ClearMin(А,В), заменяющую меньшее из двух чисел А и В нулем(А иВ - вещественные параметры-переменные). продемонстрировать...

Описать процедуру Nal(sh, A)
type food = ( broad, butter, milk, meat, fish, salt, cheese, saucers, sugar, tea, cafe); assort = set...

Описать рекурсивную процедуру
Описать рекурсивную процедуру (функцию), которая по целому неотрицательному числу n дает n-1 число Фибоначчи. Fn+2 = Fn+1 +Fn; F1=1, F2=1....


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru