Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/13: Рейтинг темы: голосов - 13, средняя оценка - 5.00
10 / 2 / 0
Регистрация: 25.11.2011
Сообщений: 71
1

Выход из условия, не покидая цикл

14.04.2013, 10:20. Показов 2404. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
День добрый! Подскажите, можно ли выйти из условия, но при этом остаться в цикле?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.04.2013, 10:20
Ответы с готовыми решениями:

Выход из условия
как можно сделать выход с if например void a() {If(тратата) {трататат} ..........// етот...

Выход за предел условия while& for
Вывод 1 значения за пределом условия,хотя 150 указано ( также и если делать с while ($price <150)...

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

Выход из цикла на месте выполнения условия
Private Sub CommandButton3_Click() 'Решения уравнения в форме Dim X1 As Double Dim X2 As...

4
2664 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
14.04.2013, 10:47 2
Цитата Сообщение от Анастасия94 Посмотреть сообщение
можно ли выйти из условия
Нельзя.
Ибо "войти в условие" и "выйти из условия" - это нонсенс.
0
10 / 2 / 0
Регистрация: 25.11.2011
Сообщений: 71
14.04.2013, 11:14  [ТС] 3
mss, да, действительно..
Тогда начну с самого начала...
Есть программа. Вводится количество сомножителей(m). В зависимости от этого m в грид1 формируется количество столбцов (столбцы степеней сомножителей). Вводим степени для каждого из сомножителей. Нажимаем Ок.
Появляется Грид2. Туда нужно записать коэффициенты сомножителей. Количество колонок зависит от степени сомножителя. Мне нужно вывести названия этих колонок. Если сомножитель 1, то названия в Гриде2 выводится нормально и вообще все хорошо. Если же сомножителей больше одного, то ничего хорошего.
Т.е., например, 2 сомножителя, степени - 1 и 2. Сначала в Грид2 должно быть 3 колонки, названия у 1-й - Т1, у 2-й - К (0-вая - сомножитель 1-й). Нажимаем кнопку Ок для коэффициентов, колонки очищаются, и их должно стать 4 (названия - 1-я - Т2, 2-я - Т1, 3-я - К, 0-вая - сомножитель 2-й).
А у меня для обоих случаев колонок 4.

Добавлено через 5 минут
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
procedure TForm1.btn_step_chClick(Sender: TObject);//сохраняет массив степеней
var
  i: Integer;
begin
  //memo1.Lines.Add('m:'+inttostr(m));
 
  for i:=1 to m do step_ch[i]:=strtoint(StringGrid1.Cells[i,1]);
  label5.Visible:=true;
  StringGrid2.Visible:=true;
  StringGrid2.Enabled:=true;
  btn_koef_ch.Enabled:=true;
  //вписываем названия колонок в грид2 для коэффициентов
  vvod_koef_grid(StringGrid2, step_ch, m);
  btn_step_ch.Enabled:=false;
  //for i:=1 to m do memo1.Lines.Add('stepen ch:'+inttostr(step_ch[i]));
end;
 
procedure TForm1.vvod_koef_grid(Grid:TStringGrid;step:mas_step;m_n:integer);//формирует количество колонок и их названий в Гриде2.
var i:integer;
begin
  i:=1;
  for i:=1 to m_n do
  begin
    if step[i]=2 then
      begin
        Grid.ColCount:=4;
        Grid.Cells[1,0]:='T2';
        Grid.Cells[2,0]:='T1';
        Grid.Cells[3,0]:='K';
      end;
    if step[i]=1 then
      begin
        Grid.ColCount:=3;
        Grid.Cells[1,0]:='T1';
        Grid.Cells[2,0]:='K';
      end;
    if step[i]=0 then
      begin
        Grid.ColCount:=2;
        Grid.Cells[1,0]:='K';
      end;
  end;
  //for i:=1 to 3 do AutoSizeGridColumn(StringGrid2, i);
end;
 
//следующие две процедуры - для сохранения  коэффициентов из грид2 в массив a[i,j]
procedure TForm1.btn_koef_chClick(Sender: TObject);
var i, j:integer;
begin
  if koef_ch<m then//счетчик.Изначально равен 0.
  begin
    StringGrid2.Cells[0,1]:='Сомножитель'+ inttostr(koef_ch);
    koef(koef_ch, a, StringGrid2, m);
    koef_ch:=koef_ch+1;
    if m=koef_ch then
      begin
        btn_koef_ch.Enabled:=false;
        //for i:=0 to m-1 do
          //for j:=1 to 3 do
            //memo1.Lines.Add(floattostr(a[i, j]));
      end;
  end;
end;
 
procedure TForm1.koef(k: integer; var mas:mas_koef; StringGrid:TStringGrid; m_n:integer);
var j:integer;
begin
  for j:=1 to stringGrid.ColCount-1 do
      begin
        mas[k, j]:=strtofloat(StringGrid.Cells[j, 1]);
        if k<m_n-1 then
        StringGrid.Cells[j, 1]:='';
      end;
end;
0
2664 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
14.04.2013, 20:03 4
Цитата Сообщение от Анастасия94 Посмотреть сообщение
начну с самого начала
"Начало" - это задание препода, слово в слово, без отсебячины.
0
10 / 2 / 0
Регистрация: 25.11.2011
Сообщений: 71
14.04.2013, 20:13  [ТС] 5
mss, задание огромное. Там очень много всего. Думаю, что вы не захотите в этом разбираться.
Думала, что доступно написала и этого достаточно будет.
Ладно, по-другому сделала, пока вроде работает.
А вообще, спасибо, что отвечаете и поправляете.
0
14.04.2013, 20:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.04.2013, 20:13
Помогаю со студенческими работами здесь

Выход из цикла на месте выполнения условия
Здравствуйте. Подскажите кто-нибудь, пожалуйста, как сделать макрос к такому условию: На 1,2,3...

Выход-Вход (Цикл)
// ConsoleApplication1.cpp: определяет точку входа для консольного приложения. // #include...

Бесконечный цикл for и sleep . Выход
Сделал на хостинге файл с таким кодом: for($s=0; $s&lt;1; $s=0) { $time = time(); $sql = &quot;...

цикл и условия JS
Добрый день. Суть моей проблемы вот в чем: var day = prompt(&quot;1)Укажите, к какой группе...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru