Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 23.12.2011, 20:41   #1 (permalink)
*Катюшка*
Новичок
 
Регистрация: 15.12.2011
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Общее решение

Добрый вечер!
Помогите пожалуйста написать алгоритмы общего решения следующих задач:

1)Значения переменных X,Y,Z поменять местами так, чтобы они оказались упорядоченными по убыванию.

2) Дан масссив размера N. Найти номера двух ближайших по значению элементов из этого массива.

3) Описать процедуру Trim(S), удаляющую в строке S пробелы. Используя эту процедуру, преобразовать пять данных строк.

язык программирования Delphi в стиле паскаль
*Катюшка* вне форума   Ответить с цитированием

Старый 23.12.2011, 20:41
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Проблему будет решать проще, если набраться информации из похожих топиков

Решение задачи в паскале
Конкурс "Самоделкин" - общее голосование

Старый 23.12.2011, 21:50   #2 (permalink)
AlexZir
support
 
Аватар для AlexZir
 
Регистрация: 19.08.2007
Адрес: Зея
Сообщений: 15,797
Записей в дневнике: 71
Сказал(а) спасибо: 166
Поблагодарили 203 раз(а) в 86 сообщениях
Репутация: 75760
По умолчанию

Цитата:
Сообщение от *Катюшка* Посмотреть сообщение
язык программирования Delphi в стиле паскаль
То есть консольное приложение?

1) Введите промежуточную переменную, сначала первое число сравните со вторым, потом с третьим, при необходимости поменяйте их местами, потом второе число также сравните с первым и третьим и поменяйте их местами, если необходимо. Промежуточная переменная нужна для облегчения обмена значениями между двумя переменными, хотя можно вполне обойтись и без нее, но вычисления будут малость сложнее.

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

3) Для вырезки пробелов используйте строковые функции, в процедуре заведите цикл от 1 до length(S) и анализируйте каждый символ строки по его номеру на предмет его совпадения с пробелом (код 32), если совпадает - удаляйте символ, индекс цикла при этом уменьшайте на 1 для повторного анализа текущего символа. Организуйте вызов процедуры для каждой строки.
AlexZir вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 19:48.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.