Сейчас на форуме: asfa, _MBK_, Adler (+8 невидимых)

 eXeL@B —› Вопросы новичков —› Delphi-VB
Посл.ответ Сообщение

Ранг: 4.5 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 16 декабря 2012 14:57
· Личное сообщение · #1

Помогите перевести с Visual basic на Delphi.

Private Sub CommandButton1_Click()
Dim name As String, lname As Integer, serial As String
name = TextBox1.Text: lname = Len(name): errnum = 0

If Len(name) < 5 Then
errnum = 1
GoTo name_err
End If

For i = 1 To lname
a = Asc(Mid(name, i, 1))
If a > 200 Then
errnum = 2
GoTo name_err
End If
b = 200 - a - i
c = c & CStr(b)
Next i

Select Case (lname - 5)
Case 0: serial = c & "T"
Case 1: serial = c & "R"
Case 2: serial = c & "I"
Case 3: serial = c & "P"
Case 4: serial = c & "L"
Case Else: serial = c & "E"
End Select

TextBox2.Text = serial
Exit Sub

name_err:
If errnum = 1 Then TextBox2.Text = "Enter a longer name..."
If errnum = 2 Then TextBox2.Text = "Invalid name entered!!!"
End Sub



Ранг: 9.8 (гость), 20thx
Активность: 0.010
Статус: Участник
tPORt

Создано: 16 декабря 2012 15:16 · Поправил: JMPer
· Личное сообщение · #2

Приблизительно так
Code:
  1. NameBuf:=edit1.text;
  2. lname:=Length(NameBuf);
  3. err:=0;
  4. c:='';
  5.  
  6. if lname < 5 then edit2.Text := "Enter a longer name..." else
  7. for i:=1 to lname do
  8.          begin
  9.                  a:=ord(NameBuf[i]);
  10.                  if a>200 then break;
  11.                  b:=200-a-i
  12.                  c:=c+chr(b);
  13.          end;
  14.          
  15.          if a>200 then edit2.Text := "Invalid name entered!!!" else
  16.          
  17.          case (lname-5) of
  18.                  0: serial:=+ 'T';
  19.                  1: serial:=+ 'R';
  20.                  2: serial:=+ 'I';
  21.                  3: serial:=+ 'P';
  22.                  4: serial:=+ 'L';
  23.                  else serial:=+ 'E';
  24.        end; //case
  25.          edit2.Text := serial      




Ранг: 4.5 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 16 декабря 2012 15:40
· Личное сообщение · #3

Переменные?



Ранг: 301.4 (мудрец), 194thx
Активность: 0.170.01
Статус: Участник

Создано: 16 декабря 2012 15:50 · Поправил: Veliant
· Личное сообщение · #4

А самому подумать лень? Либо надо было создавать сообщение в теме поиск специалистов, коли сам не хочешь никакой работы выполнять


 eXeL@B —› Вопросы новичков —› Delphi-VB
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати