Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Turbo Pascal Напечатать те из двузначных чисел, которые делятся на 4, но не делятся на 6 https://www.cyberforum.ru/ turbo-pascal/ thread1105393.html
Помогите решить 2 способами с редпроверкой и постпроверкой условий Напечатать те из двузначных чисел, которые делятся на 4, но не делятся на 6.
Составить программу для вычисления значения функции y=ln(1+x) разложением функции в степенной ряд Turbo Pascal
вычислить с точностью E: y=ln(1+x)=x-x 2\2+x 3\3+.+(-1) (n-1)x n\n+ как это делать, кто знает?
Turbo Pascal Строка символов до точки https://www.cyberforum.ru/ turbo-pascal/ thread1105325.html
Дана строка символов до точки. Определить, является ли она правильным скобочным выражением. Рассматривать только круглые скобки. На экран вывести исходную строку и результаты с соответствующими...
Turbo Pascal Вычислить дату следующего дня https://www.cyberforum.ru/ turbo-pascal/ thread1105319.html
Написать программу, которая вычисляет дату следующего дня. Ниже представлен рекомендуемый вид экрана во время работы программы(данные, введенные пользователем, выделены полужирном цветом) Введите...
Напечатать строку, предварительно преобразовав ее следующим образом: удалить все вложения th Turbo Pascal
помогите решить,заранее спасибо!
Turbo Pascal Подсчитать количество элементов с одинаковыми порядковыми номерами https://www.cyberforum.ru/ turbo-pascal/ thread1105277.html
Используя нетипизированный параметр в подпрограмме, в строке и в векторе из 10 компонентов подсчитать количество элементов с одинаковыми порядковыми номерами.
Turbo Pascal Определить минимальный элемент в каждой строке матрицы и сформировать из них массив https://www.cyberforum.ru/ turbo-pascal/ thread1105265.html
Здравствуйте, форумчане. Задание: определить минимальный элемент в каждой строке и сформировать из них массив, определить произведение элементов этого массива. Скрины программы: Ссылки...
Turbo Pascal Вычислить площадь и периметр прямоугольника
Даны 2 стороны прямоугольника. Вычислить площадь и периметр. Из получившихся элементов сформировать массив, в котором элементы будут выстроены в порядке убывания. :help: :help: :help:
Turbo Pascal С помощью подпрограммы ввода и вывода вектора ввести и вывести матрицы 5х4 и 3х5 С помощь подпрограммы ввода и вывода вектора ввести и вывести матрицы 5х4 и 3х5 https://www.cyberforum.ru/ turbo-pascal/ thread1105226.html Turbo Pascal Перевести число из десятичной в шестнадцатиричную систему счисления Используя в подпрограмме массив или строку открытого типа перевести число из десятичной в шестнадцатиричную систему счисления. Помогите изменить программу var a : string; function... https://www.cyberforum.ru/ turbo-pascal/ thread1105224.html
Turbo Pascal Нетипизированные параметры подпрограмм
Помогите исправить под нетипизированный параметрvar a : string; function HEX_DEC(x:string):longint; const digits:array of char = ...
Turbo Pascal Напишите программу ввода целых чисел с клавиатуры до тех пор, пока не будет введено число Напишите программу ввода целых чисел с клавиатуры до тех пор, пока не будет введено число, удовлетворяющее условию: а) число положительное; б) число делится нацело на 6 и больше 60 https://www.cyberforum.ru/ turbo-pascal/ thread1105212.html
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32580 / 21051 / 8131
Регистрация: 22.10.2011
Сообщений: 36,323
Записей в блоге: 8
27.02.2014, 16:19 0

Перенести лишние знаки в начало,сохраняя порядок - Turbo Pascal - Ответ 5837076

27.02.2014, 16:19. Показов 1254. Ответов 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
function reorganize(s : string) : string;
const D = ['0' .. '9'];
var
  i, j : integer;
  T : char;
begin
  for i := 1 to length(s) do
    for j := Length(s) downto i + 1 do
      if ((s[j] in D) xor (s[j - 1] in D)) and
         (not (s[j - 1] in D) or (s[j] in D)) then
      begin
        T := s[j - 1];
        s[j - 1] := s[j];
        s[j] := T;
      end;
  reorganize := s;
end;
 
var
  s : string;
 
begin
  writeln(reorganize('start 23finish513876'));
end.


Вернуться к обсуждению:
Перенести лишние знаки в начало,сохраняя порядок Turbo Pascal
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.02.2014, 16:19
Готовые ответы и решения:

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

Дана строка. В ней ошибочно набраны цифры. Перенести их в конец сохраняя порядок
Дана строка. В ней ошибочно набраны цифры. Перенести их в конец сохраняя порядок.(задача на строки,...

Все неравные 0 элементы массива переписать, сохраняя их порядок, в начало массива
Ввести одномерный массив Х(N). Все элементы массива неравные нулю переписать, сохраняя их...

Переместить в начало все отрицательные элементы списка, сохраняя их порядок
Дан список из n целых чисел a1,a2,.,an. Переместить в начало все отрицательные элементы списка,...

2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.02.2014, 16:19
Помогаю со студенческими работами здесь

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

Переместить все цифры в конец, а остальные символы в начало строки, сохраняя порядок взаимного расположения
Преобразовать строку символов по пaравилу: переместить все цифры в конец, а остальные символы в...

Сдвинуть все элементы с четными индексами в начало массива, а с нечетными – в конец, сохраняя порядок их следования.
Задан одномерный массив. Сдвинуть все элементы с четными индексами в начало массива, а с нечетными...

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

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru