Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 01.11.2014
Сообщений: 38

В строке и в векторе из 10 компонентов подсчитать количество элементов с одинаковыми порядковыми номерами

04.03.2015, 15:50. Показов 1130. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В строке и в векторе из 10 компонентов подсчитать количество элементов с
одинаковыми порядковыми номерами, используя нетипизированный параметр в подпрограмме.
Я сделал через абсолют , но нужно через явное представление. Вот что получилось через абсолют:
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
program netip_param;
type
  Vector = array[1..10] of integer; { имеются 10 компонентов}
var
  mas:string[10]; {массив строк}
  mas2:vector;   {массив целых чисел}
  i,sum:integer;
 
procedure Pro(var M;M2:integer);
var
  am:array[1..10] of char absolute M;
  am2:array[1..10] of integer absolute M2;
begin
for i:=1 to 10 do
begin
sum:=sum+1;
end;
end;
 
begin
sum:=0;
Pro(mas,mas2);
writeln(sum);
readln;
readln;
end.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.03.2015, 15:50
Ответы с готовыми решениями:

Подсчитать количество элементов с одинаковыми порядковыми номерами
В строке и в векторе из 10 компонентов подсчитать количество элементов с одинаковыми порядковыми номерами. Нужна помощь, что-то...

Подсчитать количество элементов с одинаковыми порядковыми номерами
Используя нетипизированный параметр в подпрограмме, в строке и в векторе из 10 компонентов подсчитать количество элементов с одинаковыми...

В логическом векторе подсчитать число элементов с четными номерами
В логическом векторе подсчитать число элементов с четными номерами, имеющими значение FALSE.

15
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8665 / 4502 / 1670
Регистрация: 01.02.2015
Сообщений: 13,931
Записей в блоге: 13
04.03.2015, 16:36
подсчитать количество элементов с одинаковыми порядковыми номерами
s v Порядковый номер
a 100 1
b 200 2
c 300 3
f 999 4
r 777 5
..........
t 111 10
Итого в строке s и в векторе v по 10 одинаковых порядковых номеров.

Или условие не точно приведено?
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
04.03.2015, 16:39
Цитата Сообщение от ФедосеевПавел Посмотреть сообщение
Или условие не точно приведено?
Это выясняется в разных темах наверное уже неделю..
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8665 / 4502 / 1670
Регистрация: 01.02.2015
Сообщений: 13,931
Записей в блоге: 13
04.03.2015, 16:43
Sorry. Я не всё читаю...
0
0 / 0 / 0
Регистрация: 01.11.2014
Сообщений: 38
04.03.2015, 16:48  [ТС]
Puporev, ФедосеевПавел, То что 10 это да. Через абсолют правильно написано, как эту же прогу записать через явное представление?
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
04.03.2015, 17:05
Цитата Сообщение от vladyssov Посмотреть сообщение
Через абсолют правильно написано
Возможо, только я не смог запустить и посмотреть.
0
0 / 0 / 0
Регистрация: 01.11.2014
Сообщений: 38
04.03.2015, 17:27  [ТС]
Puporev, ну может некоторые недоработки, но в целом правильно
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8665 / 4502 / 1670
Регистрация: 01.02.2015
Сообщений: 13,931
Записей в блоге: 13
04.03.2015, 17:30
vladyssov, сегодня и завтра рабочие дни. Подойди к преподавателю и попроси уточнить задание, а также привести 1-2 тестовых примера, чтобы было понятнее. Это лучше, чем невыполнение задания.

Если принять твою интерпретацию задания, то через нетипизированные параметры, это так
- замени заголовок процедуры на
Pascal
1
procedure Pro(var M, M2);
- удали строки с absolute

Но знай, что и с absolute - у тебя в программе некомпилируемая чушь. А кроме того, ты не видишь разницы между параметрами-значениями и параметрами-переменными.
0
0 / 0 / 0
Регистрация: 01.11.2014
Сообщений: 38
04.03.2015, 17:55  [ТС]
ФедосеевПавел, спасибо, с точкой запятой я глупанул. Абсолюты убрал. Все работает=)
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8665 / 4502 / 1670
Регистрация: 01.02.2015
Сообщений: 13,931
Записей в блоге: 13
04.03.2015, 18:05
Не поверишь - так тоже будет работать
Pascal
1
2
3
4
5
6
7
8
9
10
...........
procedure Pro;
................
begin
  sum:=0;
  Pro;
  writeln(sum);
  readln;
  readln;
end.
Это я к тому, что
vladyssov, сегодня и завтра рабочие дни. Подойди к преподавателю и попроси уточнить задание, а также привести 1-2 тестовых примера, чтобы было понятнее. Это лучше, чем невыполнение задания.
0
0 / 0 / 0
Регистрация: 01.11.2014
Сообщений: 38
08.03.2015, 20:35  [ТС]
Puporev, ФедосеевПавел, Товарищи, не подскажите как сравнить ( наверно через буфер), я делаю , но ошибку выдает
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8665 / 4502 / 1670
Регистрация: 01.02.2015
Сообщений: 13,931
Записей в блоге: 13
08.03.2015, 21:13
Что с чем?

Добавлено через 18 минут
А-а-а! В соседней теме увидел код.

Ты за рабочие дни должен был уточнить, что сравнивать.

И ещё, тип integer в разных реализациях занимает 2 или 4 байта, тип char - строго 1 байт. Таким образом переменная mas2 типа vector занимает от 20 до 40 байт (в зависимости от компилятора), а переменная mas занимает 10 байт.
Как сравнивать?

Или, если ты не в состоянии спросить у преподавателя, то хоть придумай, что ты хочешь получить. И внятно сформулируй, по возможности, с примером.

Обещаю, до получения ответа на мой вопрос, на все дальнейшие твои посты, буду цитировать вышеприведённый абзац.
0
0 / 0 / 0
Регистрация: 01.11.2014
Сообщений: 38
09.03.2015, 00:06  [ТС]
ФедосеевПавел, Сравнить вектор и строку, получается mas и mas2
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8665 / 4502 / 1670
Регистрация: 01.02.2015
Сообщений: 13,931
Записей в блоге: 13
09.03.2015, 07:46
Ничего не понял. По причинам, описанным выше - тип char занимает 1 байт, а тип integer от 2 до 4 байт.
Понимаю, что всё нижесказанное звучит по-хамски. Т.к. ты сам не знаешь, что тебе нужно, у преподавателя не спрашиваешь, то корректно помочь тебе ни я ни кто другой не может. В принципе. Из этго следует вывод, что сейчас я тратил своё время на создание очередного примера впустую, его у тебя не примут, ты опять вернёшься с бессвязными мольбами о помощи.
Поясни мне следующую вещь. Пусть имеется два массива - символьный из 10 элементов и целочисленный из 10 элементов.
Pascal
1
2
3
4
5
6
type
  vector  = array[1..10] of integer;
  tstring = array[1..10] of char;
var
  v: vector = (97, 67, 70, 33, 48, -100, -65, 80, 90, 42);
  s: tstring = 'abc134cf67';
В памяти эти массивы занимают место 10 (tstring) и 20 (vector) байт. В 16-ном (hex) виде:
s: 61 62 63 31 33 34 63 66 36 37
v: 61 00 43 00 46 00 21 00 30 00 9c ff bf ff 50 00 5a 00 2a 00
Как их сравнивать???
Вот этого от тебя не может никто добиться за неделю!!!
Поэтому лови очередной ненужный вариант кода. И пока не ответишь с примерами - ничего не изменится.
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
program Compare;
 
type
  vector  = array[1..10] of byte;
  tstring = array[1..10] of char;
 
  function CountSameElements(var a, b; n: integer): integer;
  type
    TTypeCast = array[0..1000] of byte;
  var
    i, Count: integer;
  begin
    Count := 0;
    for i := 0 to n - 1 do
      if TTypeCast(a)[i] = TTypeCast(b)[i] then
        Inc(Count);
    CountSameElements := Count;
  end;
 
var
  v: vector = (97, 67, 70, 33, 48, 49, 65, 80, 90, 42);
  s: tstring = 'abc134cf67';
begin
  writeln(CountSameElements(v,s,10));
end.
Добавлено через 5 минут
Иди к преподавателю, уточняй задание, попроси пару примеров!!!
Что сложного?

Добавлено через 2 минуты
Как вариант, попроси родителей это сделать.

Ну сколько можно переливать из пустого в порожнее!

Если не отличаешься сообразительностью - завершай обучение - это не твоё!
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7818 / 4637 / 2837
Регистрация: 22.11.2013
Сообщений: 13,159
Записей в блоге: 1
09.03.2015, 21:45
Цитата Сообщение от ФедосеевПавел Посмотреть сообщение
Как их сравнивать???
Вероятно, имелось в виду следующее:
В строке и в векторе из 10 компонентов подсчитать количество равных элементов с
одинаковыми порядковыми номерами, используя нетипизированный параметр в подпрограмме.
Тогда, например, так:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
type
  TVector = array [1..10] of Integer;
 
function CountEq(var v, s): Integer;
var
  vv: TVector absolute v;
  ss: String absolute s;
  i, r: Integer;
begin
  r:=0; i:=Length(ss);
  if i>10 then i:=10;
  for i:=1 to i do
    if vv[i]=Ord(ss[i]) then Inc(r);
  CountEq:=r;
end;
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8665 / 4502 / 1670
Регистрация: 01.02.2015
Сообщений: 13,931
Записей в блоге: 13
09.03.2015, 22:58
----удалил ошибочное предположение

Добавлено через 9 минут
======================================== ===
По правде, сегодня к вечеру, мне стало казаться, что требуется написать процедуру общего вида (с нетипизированными параметрами) для сравнения массивов разных типов. Т.е. одной функцией сравнивать в одном вызове vector с vector, а при другом вызове строку со строкой.
Но ТС ничего не уточняет. Я бы хотел ему помочь, но также как и все посты в этой теме, мои носят вероятностный характер.

Добавлено через 9 минут
-------------------
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.03.2015, 22:58
Помогаю со студенческими работами здесь

В логическом векторе подсчитать число элементов с четными номерами,имеющими значение false.
очень прошу,помогите решить одну задачу. Задача: В логическом векторе С подсчитать число элементов с четными номерами,имеющими значение...

Подпрограммы. Вычислить количество и сумму элементов, значения которых совпадают с порядковыми номерами.
Задана последовательность чисел. Вычислить количество и сумму элементов, значения которых совпадают с их порядковыми номерами. Выполнить...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru