0 / 0 / 1
Регистрация: 05.05.2012
Сообщений: 19
1

нужно дописать программу (c оператором for to do)

27.05.2012, 23:08. Показов 1083. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1.
нужно дописать программу (c оператором for  to  do)

Код
var i,max,x:integer;
a:array[1..30] of integer;

procedure TForm1.Button1Click(Sender: TObject);
begin
memo1.Clear;
randomize;
for i:=1 to 30 do
begin
a[i]:=random(50);
memo1.Lines.Add(inttostr(a[i]));
end;
end;


procedure TForm1.Button2Click(Sender: TObject);
begin
max:=a[i];
for i:=1 to 30 do
begin
if a[i]>max then
begin
max:=a[i];
end;
Edit1.Text:=(inttostr(max));
end;
end;


procedure TForm1.Button3Click(Sender: TObject);
???????????????// помогите дописать код к кнопки "Заменить"
end.
Задание написано в скриншоте

2.
нужно дописать программу (c оператором for  to  do)

Код
procedure TForm1.Button1Click(Sender: TObject);
var a,c, n,m:integer;
b,d:array[1..20] of integer;

begin
Memo1.Clear;
Memo2.Clear;
Memo3.Clear;
randomize;
n:=strtoint(edit1.Text);
for a:=1 to n do
begin
b[a]:=random(100)-50;
Memo1.Lines.Add(inttostr(a)+'.    '+inttostr(b[a]));
end;
m:=strtoint(edit2.Text);
for c:=1 to m do
begin
d[c]:=random(100)-50;
Memo2.Lines.Add(inttostr(c)+'.    '+inttostr(d[c]))
end;
end;

prcedure TForm1.Edit1Click(Sender: TObject);
begin
edit1.Text:='';
end;

procedure TForm1.Edit2Click(Sender: TObject);
begin
edit2.Text:='';
end;

end.
тут я написала код чтобы определенное кол-во цифр (введеные в Edit1/Edit2) выводились в поля Memo1/Memo2, а дальше прошу вашей помощи, задание описано выше в скриншоте.
Заранее большое спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.05.2012, 23:08
Ответы с готовыми решениями:

Нужно написать программу с оператором switch
Нужно написать программу перевода введенного символа от a до f в верхний регистр , а другие...

Нужно дописать программу
Здравствуйте! Пишу программу на дельфи уже на основе готовой, то есть уже был исходный код. Однако...

Нужно дописать программу вывода графиков
Есть программа, которая строит график по функции указанной в коде. Нужно чтобы при выводе на экран...

Деление монет нужно дописать программу
нужно доделать задачу, которая определит количество различных комбинаций монет (номинал монет...

12
421 / 351 / 19
Регистрация: 14.05.2012
Сообщений: 1,437
27.05.2012, 23:42 2
попробуй

procedure TForm1.Button3Click(Sender: TObject);

begin

for i:=1 to 30 do
begin
a[i]=a[i]/strtoint(edit1.text);
end;

end;

Добавлено через 2 минуты
Забыл еще вот это добавь
memo2.Lines.Add(inttostr(a[i]));
0
0 / 0 / 1
Регистрация: 05.05.2012
Сообщений: 19
27.05.2012, 23:45  [ТС] 3
выдает ошибку =>
нужно дописать программу (c оператором for  to  do)
(
0
421 / 351 / 19
Регистрация: 14.05.2012
Сообщений: 1,437
27.05.2012, 23:49 4
Скорее всего выскачит ошибка надо либо массив объявит как real либо a[i]=round(a[i]/strtoint(edit1.text));// округлить до целых

Добавлено через 1 минуту
Delphi
1
2
3
var
i:integer;
begin
Добавлено через 2 минуты
Последнее что я написал делать не надо у тебя i глобально объявлена я сразу не увидел...
1
3943 / 1868 / 337
Регистрация: 16.03.2012
Сообщений: 3,880
28.05.2012, 00:30 5
Последнее что я написал делать не надо у тебя i глобально объявлена я сразу не увидел...
Нужно объявлять переменные, которые используются как индексы в цикле - как локальные. И компилятор об этом пишет.
wonker: Тебе попадёт от администрации за выкладывание нескольких задач в одной теме.

Добавлено через 36 минут
По второй задаче:
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
//Это на кнопку - [B]Заполнить[/B]...
procedure TForm1.Button1Click(Sender: TObject);
var 
  i,j,n : integer;
begin
  Memo1.Clear;
  Memo2.Clear;
  Memo3.Clear;
  randomize;
 
  //Заполняем первое Memo
  n:=strtoint(edit1.Text);
  for i:=1 to n do
  Memo1.Lines.Add(inttostr(Random(100)-50)); //Нумеровать их нет необходимости - будет только мешать
  //Заполняем второе Memo
  n:=strtoint(edit2.Text);
  for i:=1 to n do
  Memo2.Lines.Add(inttostr(Random(100)-50))
end;
 
//Это на кнопку - [B]Объединить[/B]...
procedure TForm1.Button2Click(Sender: TObject);
var 
  i : integer;
  StrList : TStringList;
begin
  StrList:=TStringList.Create;
  StrList.Sorted:=True;             //Разрешаем сортировку
  StrList.Duplicates:=dupIgnore; //Запрещаем двойные строки
 
  //Переносим в StringList первое Memo
  for i:=0 to Memo1.Lines.Count-1 do
  StrList.Add(Memo1.Lines[i]);
  //Переносим в StringList второе Memo
  for i:=0 to Memo2.Lines.Count-1 do
  StrList.Add(Memo2.Lines[i]);
 
  //Переносим все строки в Memo3
  for i:=0 to StrList.Count-1 do
  Memo3.Lines.Add(StrList.Strings[i]);
 
  Edit3.Text:=IntToStr(StrList.Count); //Количество строк в третьем массиве
 
  StrList.Free; //Освобождаем StringList
end;
 
procedure TForm1.Edit1Click(Sender: TObject);
begin
  edit1.Text:='';
end;
 
procedure TForm1.Edit2Click(Sender: TObject);
begin
  edit2.Text:='';
end;
1
0 / 0 / 1
Регистрация: 05.05.2012
Сообщений: 19
28.05.2012, 00:30  [ТС] 6
Санек25: спасибо большое, я округлила, все работает)
Одиночка: я не знала что нельзя выкладывать по две задачи, спасибо что сказал, исправлюсь и огромное тебе спасибо за помощь
0
0 / 0 / 1
Регистрация: 05.05.2012
Сообщений: 19
28.05.2012, 00:45  [ТС] 7
Во второй задаче ошибка =>
нужно дописать программу (c оператором for  to  do)
0
3943 / 1868 / 337
Регистрация: 16.03.2012
Сообщений: 3,880
28.05.2012, 00:53 8
Строку 4 моего кода заменить:
Delphi
1
  i,n : integer;
В процедуре Button2Click вставь объявление:
Delphi
1
2
3
var 
  i : integer;
  StrList : TStringList;

Не по теме:

И ты в курсе, что нужно, периодически, обновлять страницу? Иначе не увидишь, когда выкладывают ответ.

1
0 / 0 / 1
Регистрация: 05.05.2012
Сообщений: 19
28.05.2012, 00:59  [ТС] 9
упс, сейчас исправлю, забыла поставить Edit 3..

Все работает, еще раз спасибо)
0
3943 / 1868 / 337
Регистрация: 16.03.2012
Сообщений: 3,880
28.05.2012, 01:03 10
Согласно условию задачи:
Нужно подсчитать количество элементов в выходном массиве.
Поставь ещё один Edit (Edit3) над Memo3.
1
0 / 0 / 1
Регистрация: 05.05.2012
Сообщений: 19
28.05.2012, 01:05  [ТС] 11
Цитата Сообщение от Одиночка Посмотреть сообщение
Согласно условию задачи:

Поставь ещё один Edit (Edit3) над Memo3.
да да) сама уже заметила,исправила, все работает, спасибо)
0
3943 / 1868 / 337
Регистрация: 16.03.2012
Сообщений: 3,880
28.05.2012, 01:14 12
Вообще-то там нужно Label (Edit для ввода данных) ставить и писать:
Delphi
1
Label1.Caption:=IntToStr(StrList.Count);
Я просто машинально Edit вставил.
0
0 / 0 / 1
Регистрация: 05.05.2012
Сообщений: 19
28.05.2012, 01:19  [ТС] 13
Цитата Сообщение от Одиночка Посмотреть сообщение
Вообще-то там нужно Label (Edit для ввода данных) ставить и писать:
Delphi
1
Label1.Caption:=IntToStr(StrList.Count);
Я просто машинально Edit вставил.
точно) но с Edit даже как то красивее программа выглядит, так что оставлю как есть
P.S.: в принципи это же не ошибка, просто уже выбор лично каждого
0
28.05.2012, 01:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.05.2012, 01:19
Помогаю со студенческими работами здесь

Нужно дописать программу по нахождению площади!!!
Нужно найти площадь фигуры, ограниченной двумя кривыми. y={x}^{2} и y=\sqrt{x}. На языке с# Нашел,...

Нужно дописать программу (Определить среднее арифметическое в массиве)
Помогите, нужно из положительных и отрицательных значений Z сформировать массивы, определить...

Нужно дописать программу вычисления суммы элементов матрицы
Доброго времени суток! Помогите пожалуйста подправить и дописать код программы построенной по...

Нужно дописать программу чтобы изображение двигалось по прямоугольнику
Пока оно движется только буквой Г. Код под спойлером. using System; using...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru