С Новым годом! Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
Delphi Сумма ряда Здравствуйте уважаемые эксперты. Есть задание:Необходимо вывести на экран таблицу значений функции Y(x) и ее разложения в ряд S(x) Вот код, но разница между вычисление через сумму и через функцию слишком велика, подскажите в чем ошибка? Мой ряд является разложением синусоиды..unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs,... https://www.cyberforum.ru/ delphi-beginners/ thread69184.html Разработка визуального компонента TButtonMenu Delphi
помогите пожалуста разработать визуальный компонент TButtonMenu.Объясние как разработать компонент с функциональностью стандартной кнопки TButton и возможностью подключения всплывающего меню при нажатии. Всплывающее меню должно появляться в месте расположения кнопки на форме проектирования.
Delphi Runtime error 216 Проблема в следующем: есть процедура, которая создает ряд из панелей по вертикали или по горизонтали procedure PrintWord(Tr, Td, NChar,NWord:integer; Vert:boolean; Word:string); var i : integer; Top,Left : integer; //Расположение панелей сверху, слева begin Top:=Tr*30; Left:=Td*30; if Vert then begin for i:=0 to NChar-1 do begin //NChar - кол-во панелей ... https://www.cyberforum.ru/ delphi-beginners/ thread69098.html Delphi Вещественные числа и строки https://www.cyberforum.ru/ delphi-beginners/ thread69097.html
Всем добрых времени суток. Значит такой трабл. Хочу получить из мэмо1 числа, причом таким образом чтобы это были вещественные числа, то есть если в мэмо1 ввести дробное число 2,32, то мы его рассматривали не как "2" и "," и "3" и "2", а как 2,32. Суть моей задумки в том, чтобы из текста смастерить массив с вещественными числами и, для начала, оперировать с ними(среднее арифметическое и т.п.). ...
Delphi создать библиотеку
Помогите создать библиотеку. а) создать библиотеку, в которой будет находиться функция нахождения площади кольца, внутренний радиус которого равен 20, а внешний заданному числу r (r>20). б) добавить в библиотеку форму и соответствующие компоненты.
Delphi Несколько вопросов по автозагрузке и трее в Delphi Всем доброго времени суток. Нужна ваша помощь в нескольких вопросах: 1) Нужно сделать так, чтоб программа загружалась вместе с Windows, но была свёрнута в трей (используя компонент CoolTrayIcon) 2) Нужно сделать так, чтоб программа загружалась вместе с Windows и весела в процессах в свёрнутом виде, при нажатии на exeшник разварачивалась. https://www.cyberforum.ru/ delphi-beginners/ thread69074.html
Delphi Зависимость между TrackBar'ми https://www.cyberforum.ru/ delphi-beginners/ thread69069.html
Во общем есть три TrackBar'а, и переменная Energy равная 100. Как можно сделать так чтобы Position у всех трех TrackBar'ов не превышал 100. Т.е. если в первом сделали 10 то во втором можно будет установить мах 90. Например: TrackBar1.Position=90 TrackBar2.Position=10 TrackBar3.Position=0 или TrackBar1.Position=50 TrackBar2.Position=25
Вывод ответа из одного листбокса в другой Delphi
var n,i,j:Integer; begin j:=2; for i:=2 to listbox1.Items.Count-1 do begin if n mod i = 0 then while i mod j <> 0 do j:=j+1; if j=i then ListBox2.Items.Add(inttostr(j)); end; end;
Delphi Проект https://www.cyberforum.ru/ delphi-beginners/ thread69027.html
я написал проект..и сохранил в папку...а какой т вирус или хер знает чо превратило папку в .EXE...терь у мя проблему((может кто нить знает чо делать?
Delphi Описать рекурсивную функцию Combin2 (N, K), находящую число сочетаний из М элементов по К https://www.cyberforum.ru/ delphi-beginners/ thread69003.html
Доброго времени суток, ув форумчане! №1 Описать рекурсивную функцию Combin2(N, K) целого типа, находящую С(N,К) — число сочетаний из М элементов по К — с помощью рекуррентного соотношения: С(N,0) = С(N,N) = 1, С(N,К)=С(N - 1,К) + С(N - 1,N - 1) при 0<К<N. Параметры функции — целые числа; N > 0, 0 < К N. Считать, что параметр N не превосходит 20. Для уменьшения количества...
Delphi 7: создание функционального калькулятора с использованием класса Delphi
Здравствуйте. Мне нужно создать в Делфи калькулятор, вычисляющий не только простейшие математические операции, но и сложные: возведение в степень и логарифм. Эти две операции необходимо сделать используя класс. В этом классе аргументы а и х задавать через поля, а вычисление функций реализовать методами. Объяснять как это делать преподаватель не стал (это вам не школа, тут вы всё должны делать...
Delphi обработка строк Дана строка символов. Группы символов, разделенные одним или несколькими пробелами и не содержащие пробелов внутри себя, будем называть словами. Найти длину самого длинного слова. Использовать компонент RichEdit для ввода текста. Ввод предложения организовать двумя способами: в одну строку и каждое слово – на отдельной строке. Создать панель инструментов с помощью компонента ToolBar. Снабдить... https://www.cyberf
13107 / 5888 / 1707
Регистрация: 19.09.2009
Сообщений: 8,808
01.12.2009, 20:23 0

Строки в языке Object Pascal - Delphi - Ответ 388944

01.12.2009, 20:23. Показов 1458. Ответов 6
Метки (Все метки)

Ответ

Iren, вот, по твоему заданию:
Delphi
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
 
type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    Edit2: TEdit;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
//Находит в тексте слово с максимальным количеством букв.
//Затем записывает его по буквам в обратном порядке и возвращает
//полученную строку в качестве результата.
function ProcStr(aStrSrc : String) : String;
type
  TWord = record
    StartPos  : Integer;
    LettCnt   : Integer;
  end;
 
  TArrWord = array of TWord;
const
  //Множество разделителей.
  Spl : set of Char = [' ', ',', '.'];
  //Величина приращения длины динамического массива.
  Capacity = 10;
var
  //Переменные, связанные с обработкой букв.
 
  //Индекс символов строки. LettInd := 1..Length(aStrSrc).
  LettInd         : Integer;
  //Последний обработанный символ - символ обработанный на предыдущей итерации цикла.
  LastChar        : Char;
 
  //Переменные, связанные с обработкой слов.
 
  //Массив, содержащий координаты найденных слов.
  ArrWord        : TArrWord;
  //Переменная, хранящая сведения о слове.
  WordTmp        : TWord;
  //Индекс слова в строке. WordInd := 0..X.
  WordInd        : Integer;
  //Индекс слова с максимальным количеством букв.
  WordIndMax     : Integer;
  //Флаг, оказывающий, что текущая буква является последней в слове.
  IsEndWord      : Boolean;
 
  //Индекс букв в строке результата.
  i              : Integer;
begin
  //Инициализируем строку результата.
  Result := '';
 
  //-------------------------
  //Обрабатываем строку и заполняем массив ArrWord сведениями о найденных словах.
  //-------------------------
 
  //Индекс очередного слова.
  WordInd := 0;
  //Индекс очередного символа.
  LettInd := 1;
  //Перебор всех символов в строке.
  while LettInd <= Length(aStrSrc) do begin
    //Если очередной символ является буквой.
    if not (aStrSrc[LettInd] in Spl) then begin
 
      //Отслеживаем начало слова.
      if (LettInd = 1) or ( (LettInd <> 1) and (LastChar in Spl) ) then begin
        //Обнаружено начало слова.
        //Инициализируем переменные.
 
        //Позиция первой буквы слова в строке.
        WordTmp.StartPos := LettInd;
        //Количество букв в слове.
        WordTmp.LettCnt := 0;
      end;
 
      //Подсчёт общего количества букв в слове.
      Inc(WordTmp.LettCnt);
 
      //Отслеживаем конец слова.
      IsEndWord := False;
      if LettInd = Length(aStrSrc) then begin
        //Текущая буква является последним символом в слове.
        IsEndWord := True;
      end else if aStrSrc[LettInd + 1] in Spl then begin
        //Справа от текущей буквы расположена небуква.
        IsEndWord := True;
      end;
 
      if IsEndWord then begin
        //Обнаружен конец слова.
        //Добавляем данные по текущему слову в массив ArrWord.
 
        //Если требуется, увеличиваем длину массива.
        if WordInd = Length(ArrWord) then begin
          SetLength(ArrWord, Length(ArrWord) + Capacity);
        end;
        //Добавляем сведения о слове в массив.
        ArrWord[WordInd] := WordTmp;
        //Готовим индекс слов к следующей итерации.
        Inc(WordInd);
      end;
    end;
 
    //Запоминаем символ, обработанный на этой итерации.
    LastChar := aStrSrc[LettInd];
    //Готовим индекс символа для следующей итерации.
    Inc(LettInd);
  end;
 
  //Если в строке нет ни одного слова - выходим.
  if WordInd = 0 then begin
    Exit;
  end;
 
  //Корректируем длину массива ArrWord в соответствии с количеством добавленных
  //в этот массив слов.
  SetLength(ArrWord, WordInd);
 
  //-------------------------
  //Ищем в массиве ArrWord слово с максимальным количеством букв.
  //-------------------------
 
  for WordInd := 0 to High(ArrWord) do begin
    if WordInd = 0 then begin
      WordIndMax := 0;
    end;
    if ArrWord[WordInd].LettCnt > ArrWord[WordIndMax].LettCnt then begin
      WordIndMax := WordInd;
    end;
  end;
 
  //-------------------------
  //Переписываем в результирующую строку найденное слово по буквам в обратном порядке.
  //-------------------------
 
  with ArrWord[WordIndMax] do begin
    //Выделяем память для результирующей строки. - Чтобы каждый раз при переписывании
    //очередного символа не происходило пересоздания строки.
    SetLength(Result, LettCnt);
    //Переписываем в результирующую строку найденное слово по буквам в обратном порядке.
    i := 0;
    for LettInd := StartPos + LettCnt - 1 downto StartPos do begin
      Inc(i);
      Result[i] := aStrSrc[LettInd];
    end;
  end;
 
  //Освобождаем память, выделенную ранее для массива.
  Finalize(ArrWord);
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
  Edit2.Text := ProcStr(Edit1.Text);
end;
 
end.


Вернуться к обсуждению:
Строки в языке Object Pascal Delphi
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.12.2009, 20:23
Готовые ответы и решения:

Массивы в языке Object Pascal
Помогоите, пожалуйста, решить задачу в Delhi: Дан вектор A(2n). Получить количество нечетных среди...

Разработать класс и указать методы на языке Object Pascal
Разработать класс и указать методы на языке Object Pascal Класс прямая Члены класса Координаты...

Разработать класс и указанные методы на языке Object Pascal
Вариант 19 Класс Обыкновенная дробь Члены класса Числитель и знаменатель Методы Конструктор,...

Разработать программу на языке Object Pascal в среде Delphi
Разработать программу, ведущую учет результатов сдачи экзаменов студентами одной группы за один...

6
01.12.2009, 20:23
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.12.2009, 20:23
Помогаю со студенческими работами здесь

Проверить программно код на языке Object Pascal на синтаксические ошибки
Никто не подскажет, как проверить программно код на языке Object Pascal на синтаксические ошибки?

Составьте программу на языке программирования Object Pascal для вычисления значений функции
F(x)= x – sin x на отрезке с шагом h. Результат представить в виде таблицы, первый столбец которой...

Удалить из файла с исходным текстом программы на языке Object Pascal все комментарии
Удалить из файла с исходным текстом программы на языке Object Pascal все комментарии. Сохранил...

Object Pascal (Delphi)
1. Нужно написать программу на языке Object Pascal (Delphi), чтобы она переводила метры в футы и...

0
Новые блоги и статьи
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
Как написать микросервис на Go/Golang с Kafka и GitHub CI/CD
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
Как написать микросервис с нуля на C# с RabbitMQ, CQRS и CI/CD
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
Как создать игру "Танчики" на Unity3d и C#
InfoMaster 14.01.2025
Разработка игр – это увлекательный процесс, сочетающий в себе творчество и технические навыки. В этой статье мы рассмотрим создание классической игры "Танчики" с использованием Unity3D и языка. . .
Организую платный онлайн микро-курс по доработке Android-клиента Telegram
_Ivana 14.01.2025
Официальная версия и распространенные форки не полностью устраивают? Сделай свою кастомную версию клиента! 4 занятия по 2 часа (2 недели пн, ср 19:00-21:00 по Москве). Первое вводное занятие. . .
Как создать приложение для фитнеса для iOS/iPhone на Kotlin
InfoMaster 14.01.2025
Создание собственного фитнес-приложения — это не только захватывающий, но и полезный процесс, ведь оно может стать вашим верным помощником на пути к здоровому и активному образу жизни. В современных. . .
Как создать приложение магазина для iOS/iPhone на Swift
InfoMaster 14.01.2025
Введение в разработку iOS-приложений Разработка приложений для iPhone и других устройств на базе iOS открывает огромные возможности для создания инновационных мобильных решений. В данной статье мы. . .
Это работает. Скорость асинхронной логики велика. Вопрос видимо останется в стабильности. Плата - огонь!
Hrethgir 13.01.2025
По прошлому проекту в Logisim Evolution https:/ / www. cyberforum. ru/ blogs/ 223907/ blog8781. html прилагаю файл архива проекта в Gowin Eda. Восьмибитный счётчик из сумматора+ генератор сигнала. . .
UserScript для подсветки кнопок языков программировани­­­­я в зависимости от текущего раздела
volvo 13.01.2025
В результате работы этого скрипта подсвечиваются нужные кнопки не только в форме быстрого ответа, но и при редактировании сообщения: / / ==UserScript== / / @name CF_DefaultLangSelect / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru