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

Сравнение по символам строки

30.09.2013, 22:36. Показов 1091. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Суть такова
Только символьно и один массив
надо сравнить те строки где 20 символ равен "K"(грубо говоря)
те которые подходят сравнить с 16 по 19 символ (это 4 значное число 1264,6845,3593)
и вывести на экран максимальное число
и Минимальное

ТестМоя кривая прога)
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
program z1;
uses crt;
type
t1=array[1..10,1..20] of char;
var
a:t1;
i,j,n,q,l,w,e,r:integer;
c,d:integer;
t:text;
begin
clrscr;
assign(output,'2.txt');
rewrite(output);
w:=20;
r:=1;
assign(input,'1.txt');
reset(input);
for i:=1 to 10 do
begin
 for j:=1 to 20 do
 begin
 read(a[i,j]);
 end;
readln;
end;
close(input);
for i:=1 to 10 do
begin
 for j:=1 to 20 do
 begin
 write(a[i,j]);
 end;
writeln;
end;
writeln('+');
for i:=1 to 9 do
begin
  for n:=i+1 to 10 do
  begin
  c:=0;
  if (a[r,w]=a[i,w])and(a[r,w]=a[n,w]) then
  q:=1;
  for j:=16 to 19 do
  begin
  if a[i,j]>a[n,j] then
  c:=c+1;
  if c=4 then
  begin
  c:=0;
  for j:=16 to 19 do
  if a[i,j]>a[q,j] then
  q:=n;
  end;
  end;
  end;
 
end;
for i:=1 to 9 do
begin
  for n:=i+1 to 10 do
  begin
  d:=0;
  for j:=15 to 19 do
  begin
  if (a[r,w]=a[i,w])and(a[r,w]=a[n,w]) then
  if a[i,j]<a[n,j] then
  d:=1;
  if d=1 then
  l:=n;
  end;
  end;
 
end;
 
 
write('Mlad');
for j:=1 to 20do
write(a[q,j]);
writeln;
 
Write('Star');
for j:=1 to 20do
write(a[l,j]);
close(output);
readkey;
 
end.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.09.2013, 22:36
Ответы с готовыми решениями:

Программа должна считывать с клавиатуры тестовые строки и записывать их в массив пока не будет введена строка длина которого не равна 4 символам
Программа должна считывать с клавиатуры тестовые строки и записывать их в массив пока не будет введена строка длина которого не равна 4...

Найти слова, длина которых равна 5 символам, и удалить их из строки
Здравствуйте. Помогите, пожалуйста, решить следующую задачу. Задана строка-предложение. Необходимо найти слова, длина которых равна 5...

Сравнение строк по их начальным символам
У нас есть файл с содержанием: 123|456 456|789 qwe|rty. В программу поступают данные qwe она должна вывести rty. Сравнивать...

2
 Аватар для Mawrat
13114 / 5895 / 1708
Регистрация: 19.09.2009
Сообщений: 8,809
01.10.2013, 14:27
Можно так сделать:
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
program Project1;
 
const
  Fn = '1.txt';
var
  F : Text;
  S : String;
  N, NMin, NMax, Cnt, Code : Longint;
begin
  Assign(F, Fn);
 
  repeat
    Reset(F);
    NMin := 0;
    NMax := 0;
    {Количество строк с "правильным" форматом.}
    Cnt := 0;
    while not Eof(F) do begin
      {Читаем строку.}
      Readln(F, S);
      {Проверка:
      - Длина строки >= 20.
      - Буква на 20-й позиции = 'К' или 'к' на русском или 'K' или 'k' на английском.}
      if (Length(S) >= 20) and (S[20] in ['К', 'к', 'K', 'k']) then begin
        {Попытка прочесть число.}
        Val(Copy(S, 16, 4), N, Code);
        {Если число успешно прочитано, то уточняем сведения о
        наименьшем и наибольшем числах.}
        if Code = 0 then begin
          Inc(Cnt);
          if Cnt = 1 then begin
            NMin := N;
            NMax := N;
          end else if N < NMin then
            NMin := N
          else if N > NMax then
            NMax := N;
        end;
      end;
    end;
    Close(F); {Закрываем файл.}
 
    {Ответ.}
    if Cnt > 0 then
      Writeln('Наименьшее число: ', NMin, ', наибольшее число: ', NMax)
    else
      Writeln('В файле нет ни одной строки с заданным форматом.');
 
    Writeln('Повторить - Enter. Выход - любой символ + Enter.');
    Readln(S);
  until S <> '';
end.
1
2 / 2 / 6
Регистрация: 13.09.2013
Сообщений: 35
03.10.2013, 00:49  [ТС]
А можно еще вот так , Спасибо
вопрос закрыт
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
program z1;
uses crt;
type
t1=array[1..10,1..20] of char;
var
a:t1;
i,j,k:byte;
t:text;
begin
clrscr;
assign(output,'2.txt');
rewrite(output);
w:=20;
r:=1;
assign(input,'1.txt');
reset(input);
for i:=1 to 10 do
 begin
 for j:=1 to 20 do
 read(a[i,j]);
 readln;
 end;
close(input);
 
for i:=1 to 10 do
 begin
 for j:=1 to 20 do
 write(a[i,j]);
 writeln;
 end;
 
 
k:=1;
i:=0;
repeat
i:=i+1;
if (a[k,j]='M')and(a[i,j]='M') then
begin
begin
j:=16;
  while (a[k,j]=a[i,j]) and (j<=19) do
  j:=j+1;
   if (j<=19)and (a[k,j]>a[i,j]) then
   k:=i;
end;
{writeln('s  ', k );}
for j:=1 to 20 do
end;
until i>9;
writeln;
for j:= 1 to 20 do
write(a[k,j]);
 
k:=1;
i:=0;
repeat
i:=i+1;
if (a[k,j]='M')and(a[i,j]='M') then
begin
begin
j:=16;
  while (a[k,j]=a[i,j]) and (j<=19) do
  j:=j+1;
   if (j<=19)and (a[k,j]<a[i,j]) then
   k:=i;
end;
{writeln('s  ', k );}
for j:=1 to 20 do
end;
until i>9;
writeln;
for j:= 1 to 20 do
write(a[k,j]);
 
close(output)
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.10.2013, 00:49
Помогаю со студенческими работами здесь

Сравнение значений ячеек по первым символам
Добрый день, форумчане! Повторно обращаюсь за помощью, очень надо. Задача: в столбце &quot;А&quot; значения, состоящие из шести цифр...

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

Цикл по символам строки
Есть непустая строковая переменная x, хочу перебрать ее посимвольно в цикле. Умеет ли VBA как в пайтоне запускать цикл по элементам строки?...

Вывод строки по символам
Привет всем форумчанам! Пишу программу для шифрования текста кодом Цезаря. Столкнулся с такой проблемой: когда пытаюсь закодировать русский...

Как считывать строки по символам ?
Всем привет, это опять я) :) Мне нужно узнать как считывать строку, по символу. То есть, если у нас есть две строки, например: Hello...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru