|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Помогите решить пример на Delphi?
Дано натуральное число n(n<=100). Сколько цифр в числе n.
------------------------------------------------------------- Код:
var a:integer; begin readln(a); if a<=10 then wtiteln(a) else if a <= 100 then writeln(a div 10) else writeln('1'); readln{;} end. Правильно ли я решил пример или нет? Если нет, то напишите его правильно пожалуста. Заранее всем спасибо за помощь. Последний раз редактировалось Admin, 18.11.2010 в 13:18. |
#2
|
||||
|
||||
нет
правильно вот так: Код:
writeln(inttostr(lenght(inttostr(753159)))); Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#3
|
||||
|
||||
А в какую строчку ее вписать в 6-ю или последнюю (writeln)? Я новичок.
|
#4
|
||||
|
||||
Вместо всего этого блока:
Код:
if a<=10 then wtiteln(a) else if a <= 100 then writeln(a div 10) else writeln('1'); Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#5
|
||||
|
||||
Я создал Form, кинул туда Edit и Button. Как мне теперь сделать с полученным кодом, чтоб в сторку Edit вводишь число и при нажатии на книпку он показывал сколько цифр в n.
|
#6
|
||||
|
||||
Код:
ShowMesage(IntToStr(Length(Edit1.Text))); |
#7
|
||||
|
||||
Вобще я попробовал вот так:
---------------------------------------------------- Цитата:
Цитата:
|
#8
|
||||
|
||||
Ребята я кинул на Form одну Button и Edit1. В Button я прописал вот этот код:
Цитата:
|
#9
|
|||
|
|||
Для Delphi в консоли:
Код:
var s:string; begin readln(s); writeln(length(s)); readln; end. для Delphi в графике: Код:
... var s:string; begin s:=Edit1.Text; Label1.Caption:=Length(s); end. |
#10
|
||||
|
||||
lijan спасибо за помощь.
|
#11
|
|||
|
|||
tristan Ты походу с Паскаля на Дельфи перешел?
Если ты споришь с идиотом, вероятно тоже самое делает и он. |
#12
|
||||
|
||||
LMA, да несколько лет назад изучал Паскаль, в этом году перешел на Делпхи.
|
#13
|
|||
|
|||
Помогите решить
1. Дан массив целых чисел из n элементов, заполненный случайным образом числами из промежутка [-10,10]. Найти сумму элементов, имеющих нечетное значение. 2. Вывести индексы тех элементов, значения которых больше заданного числа А. 3. Определить, есть ли в данном массиве положительные элементы, кратные заданному числу К. Часть программы Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Edit1: TEdit; Edit2: TEdit; GroupBox1: TGroupBox; CheckBox1: TCheckBox; CheckBox2: TCheckBox; CheckBox3: TCheckBox; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; Label1: TLabel; Button1: TButton; Button2: TButton; Edit6: TEdit; Button3: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; N,K:integer; M:array of integer; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var i:integer; begin Randomize; N:=strtoint(edit1.Text); setlength(M,N); edit2.Text:=''; for i:=0 to N-1 do begin M[i]:=round(sin(Random(10))*10); edit2.Text:=edit2.Text+' '+inttostr(M[i]); end; end; procedure TForm1.Button2Click(Sender: TObject); var i:integer; sum, kol:integer; begin edit3.Text:=''; edit4.Text:=''; edit5.Text:=''; sum:=0; kol:=0; K:=1; for i:=0 to N-1 do begin if checkbox1.Checked then if (M[i] mod 2=0) then sum:=sum+M[i]; if checkbox2.Checked then if (M[i] div 100 = 0) and (M[i]<>0) then kol:=kol+1; if checkbox3.Checked then If (M[i]>0) and (M[i] div K=0) then K:=1; end; if checkbox1.checked then edit3.text:=inttostr(sum); if checkbox2.Checked then edit4.Text:=inttostr(kol); if checkbox3.Checked then edit5.Text:=inttostr(K); end; procedure TForm1.Button3Click(Sender: TObject); begin K:=strToint(Edit6.Text); end; end. Укажите ошибки! Последний раз редактировалось Admin, 14.02.2011 в 22:07. |
#14
|
|||
|
|||
0. сделай форматирование текста отступами. Читать же невозможно...
1. Код:
M[i]:=round(sin(Random(10))*10); Код:
M[i]:= Random(21) - 10; 2. Сумма нечетных чисел. Код:
if (M[i] mod 2=0) then sum:=sum+M[i]; Код:
(M[i] mod 2 <> 0) 3. Элементы, большие заданного A Код:
if (M[i] div 100 = 0) and (M[i]<>0) then Код:
if (M[i] > A) then // А вводится из Edit'а sIdx := sIdx + IntToStr(I)+', '; // собираем просто в строку индексы. 4. Кратные числу K. Код:
var F : Boolean; begin F := False; ... F := F Or (M[i] mod K = 0); PS. А вообще, впечатление, что код просто взят у товарища, у которого задание было в принципе похоже, но немного другое. |
#15
|
|||
|
|||
Спасибо тебе!!Вправду помог!
|