Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как взять значение из цикла 
:(
    Опции темы
epselon
Дата 26.5.2008, 00:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 9.11.2007

Репутация: нет
Всего: нет



допустим имеется цикл for(int n =0;n<10;n++)
{
   v=v+1;
}
как сделать так чтобы при каждом прохождении цикла - новое значение v сколько нужно раз записывалось в массив.
PM MAIL   Вверх
mes
Дата 26.5.2008, 00:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(epselon @  26.5.2008,  00:12 Найти цитируемый пост)
как сделать так чтобы при каждом прохождении цикла - новое значение v сколько нужно раз записывалось в массив

сколько нужно раз - это сколько?

не понял смысла вопроса..может это имелось ввиду?

Код

int mas[10];
for(int n =0;n<10;n++)
{
     mas[n] =v+1;
}


Это сообщение отредактировал(а) mes - 26.5.2008, 00:18


--------------------
PM MAIL WWW   Вверх
epselon
Дата 26.5.2008, 00:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 9.11.2007

Репутация: нет
Всего: нет



mes
а в результате получится 
mas[10] ={1,2,3,4,5,..} ?
PM MAIL   Вверх
mes
Дата 26.5.2008, 00:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(epselon @  26.5.2008,  00:23 Найти цитируемый пост)
mas[10] ={1,2,3,4,5,..} ? 

тогда так :
Код

int mas[10];
for(int n =0;n<10;n++)
{
     mas[n] =n+1;
}




--------------------
PM MAIL WWW   Вверх
yngwie19
Дата 15.6.2008, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 829
Регистрация: 15.6.2008
Где: Новгород

Репутация: нет
Всего: нет



Код


int mas[10], n, v;

for(n=0;n<10;n++)
{
     v=n+1;
     mas[n]=v;
}

PM MAIL   Вверх
anatox91
Дата 15.6.2008, 10:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


программист-самоучка
**


Профиль
Группа: Участник
Сообщений: 699
Регистрация: 12.1.2008
Где: ++Украина.Крым++

Репутация: 1
Всего: 13



можно короче
Код

int mas[10], i;
for(i=1; i <=10;) mas[i-1] = i++; 

 smile 


--------------------

The code is the design ©

Sony VAIO VGN-FW480J

user posted image
PM MAIL ICQ   Вверх
IKM2007
Дата 15.6.2008, 11:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зима близко
**


Профиль
Группа: Участник
Сообщений: 702
Регистрация: 26.4.2008
Где: olmedreca

Репутация: 3
Всего: 40



И еще короче
Код

for(int mas[10],i=1;i<=10;mas[i-1]=i++);

 smile 


--------------------
"К чёрту обстоятельства, я создаю возможности."
Брюс Ли
PM MAIL Skype   Вверх
JackYF
Дата 15.6.2008, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(anatox91 @  15.6.2008,  09:44 Найти цитируемый пост)
for(i=1; i <=10;) mas[i-1] = i++; 

Небезопасная строка. Что выполнится раньше: (i-1) или (i++) ? smile


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
IKM2007
Дата 15.6.2008, 11:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зима близко
**


Профиль
Группа: Участник
Сообщений: 702
Регистрация: 26.4.2008
Где: olmedreca

Репутация: 3
Всего: 40



Цитата(JackYF @  15.6.2008,  11:34 Найти цитируемый пост)
Небезопасная строка. Что выполнится раньше: (i-1) или (i++) ?

i-1 потом i++,слева на право, а что, на разных компиляторах по разному выполняется?


--------------------
"К чёрту обстоятельства, я создаю возможности."
Брюс Ли
PM MAIL Skype   Вверх
Rififi
Дата 15.6.2008, 13:16 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 3
Всего: 36



можно короче
И еще короче
совсем коротко:
int mas = {1,2,3,4,5,6,7,8,9,10};
:gigi:
Цитата(IKM2007 @  15.6.2008,  11:48 Найти цитируемый пост)
на разных компиляторах по разному выполняется?

одинаково. будет неопределённое поведение.
PM MAIL   Вверх
JackYF
Дата 15.6.2008, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(IKM2007 @  15.6.2008,  10:48 Найти цитируемый пост)
i-1 потом i++,слева на право

Если я не ошибаюсь, то нет. С чего ты взял, что слева направо? Это, скорее всего, undefined behaviour. Если считаешь, что ты прав, найти подверждение своим словам в стандарте.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
anatox91
Дата 15.6.2008, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


программист-самоучка
**


Профиль
Группа: Участник
Сообщений: 699
Регистрация: 12.1.2008
Где: ++Украина.Крым++

Репутация: 1
Всего: 13



Цитата(IKM2007 @  15.6.2008,  11:30 Найти цитируемый пост)
И еще короче 
Код

for(int mas[10],i=1;i<=10;mas[i-1]=i++);
 

вот так уж точно не пойдет, т.к. и mas[10] и i локальны по отношению к циклу, и за пределами цикла их не будет видно



--------------------

The code is the design ©

Sony VAIO VGN-FW480J

user posted image
PM MAIL ICQ   Вверх
IKM2007
Дата 15.6.2008, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зима близко
**


Профиль
Группа: Участник
Сообщений: 702
Регистрация: 26.4.2008
Где: olmedreca

Репутация: 3
Всего: 40



Цитата(JackYF @  15.6.2008,  19:01 Найти цитируемый пост)
Если я не ошибаюсь, то нет. С чего ты взял, что слева направо? Это, скорее всего, undefined behaviour. Если считаешь, что ты прав, найти подверждение своим словам в стандарте.

JackYF,
Да, дествительно справа налево, ошибся. smile 
Но так как написано mas[i-1] = i++; то i меняется после присваивания.
На Visual Studio 6.0 так работает.

Если не так, покаж пример, где не так работает.

Добавлено @ 19:44
Цитата(anatox91 @  15.6.2008,  19:40 Найти цитируемый пост)
вот так уж точно не пойдет, т.к. и mas[10] и i локальны по отношению к циклу, и за пределами цикла их не будет видно

Да, у меня Visual 6.0, в соседней теме узнал, что на "современных" компиляторах
for(int i;;)
i определен только в цикле. smile 

Это сообщение отредактировал(а) IKM2007 - 15.6.2008, 19:45


--------------------
"К чёрту обстоятельства, я создаю возможности."
Брюс Ли
PM MAIL Skype   Вверх
LavYaAll
Дата 16.6.2008, 08:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 62
Регистрация: 1.5.2008

Репутация: 1
Всего: 1



IKM2007, дело не  в ассоциацивности операторов, а в том, что такая конструкция, где в одном выражении есть i и i++ является нехорошей. Верный результат не гарантируется.

Это сообщение отредактировал(а) LavYaAll - 16.6.2008, 08:14
PM   Вверх
IKM2007
Дата 16.6.2008, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зима близко
**


Профиль
Группа: Участник
Сообщений: 702
Регистрация: 26.4.2008
Где: olmedreca

Репутация: 3
Всего: 40



Ах вот в чем дело. Понял! smile 


--------------------
"К чёрту обстоятельства, я создаю возможности."
Брюс Ли
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0615 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.