|
#1
|
|||
|
|||
Дано два числа...
1. Дано два числа. Верно ли, что в их записи есть одинаковые цифры? Например, 514 и 233 - неверно, 1248 и 347 -верно.
2. Известны данные о стоимости каждой из 15 моделей автомобилей и об их типе (легковой или грузовой). Найти среднюю стоимость легковых автомобилей. Все результаты поместить в текстовый файл. 3. Изобразить опускающийся парашют. Ребят, помогите. |
#2
|
||||
|
||||
1. Преобразовать числа в строки, обходить посимвольно первое число, сверяясь с цифрами второго.
2. Тоже елементарно. Сделать запись с полями Тип,Сумма. Сделать массив записей. Пройтись циклом по массиву проверяя на тип и суммируя стоимость. Одновременно подсчитывать количество совпавших. В итоге полученные суммы поделить на количество по каждому типу. 3. Не надо повторятся. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#3
|
||||
|
||||
на первый вопр.
Код:
var s1,s2,s3:string; i,p, position : Integer; begin p:=0; s1:=edit1.Text; //что ищем s2:=edit2.Text; //в чем ищем for i := 1 to Length(s2) do begin s3:=Copy(s1, i, 1); position := ansiPos(s3, s2); if position <> 0 then inc(p); end; if p>0 then ShowMessage('Верно') else ShowMessage('Не верно'); end; |
#4
|
||||
|
||||
Можно несколько покороче:
Код:
Var i,j: Integer; Found: Boolean; begin Found := False; for i := 1 to Length(Edit1.Text) do for j := 1 to Length(Edit2.Text) do if Edit1.Text[i] = Edit2.Text[j] then Found := True; if Found then ShowMessage('Есть') else ShowMessage('Нет') end; Код:
Var i: Integer; Found: Boolean; begin Found := False; for i := 1 to Length(Edit1.Text) do if Pos(Edit1.Text[i],Edit2.Text) <> 0 then Found := True; if Found then ShowMessage('Есть') else ShowMessage('Нет') end; вторая задача так, только вывод в файл сделайте сами: Код:
Var PriceList: Array[1..15] of TTransport; i, Count: Integer; Average: Real; begin for i := 1 to 15 do begin case Random(2) of 0: PriceList[i].ModelType := 'Легковой'; 1: PriceList[i].ModelType := 'Грузовой'; end; PriceList[i].Price := (1+Random(9))*10000; end; Average := 0; Count := 0; for i := 1 to 15 do begin if PriceList[i].ModelType = 'Легковой' then begin Average := Average + PriceList[i].Price; Inc(Count); end; end; Average := Average / Count; ShowMessage('Средняя сумма ='+FloatToStr(Average)+' Совпало='+IntToStr(Count)); end; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. Последний раз редактировалось Страдалецъ, 22.06.2009 в 01:25. |