Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/30: Рейтинг темы: голосов - 30, средняя оценка - 5.00
7 / 7 / 0
Регистрация: 01.11.2012
Сообщений: 26

Заполнить булевский массив goroda[100] значениями false

24.11.2012, 22:18. Показов 6145. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не соображу как это сделать !
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.11.2012, 22:18
Ответы с готовыми решениями:

Заполнить массив случайными значениями, лежащими в диапазоне от 50 до 100
Массив предназначен для хранения значений весов двадцати человек. С помощью датчика случайных чисел заполните массив целыми значениями,...

С помощью генератора случайных чисел заполнить массив целыми значениями, лежащими в диапазоне от 50 до 100 включительно.
Задание: 11. Массив предназначен для хранения значений веса двадцати человек. С помощью генератора случайных чисел заполнить массив целыми...

С помощью датчика случайных чисел заполнить массив целыми значениями, лежащими в диапазоне от 50 до 100 включительно...
Помогите пожалуйста с задачей, если можно лучше через Visual Studio. Массив предназначен для хранения значений весов двадцати человек. С...

13
19 / 11 / 0
Регистрация: 02.09.2010
Сообщений: 235
24.11.2012, 22:21
C++
1
memset(&goroda[0],0,12);
Оставшиеся 4 через операцию сдвига
Или выбелить 104 бита и выполнять
C++
1
memset(&goroda[0],0,13);
1
7 / 7 / 0
Регистрация: 01.11.2012
Сообщений: 26
24.11.2012, 22:25  [ТС]
а как нибудь полегче нельзя это сделать через цикл например? А то я только юзаю c++
0
 Аватар для v.a.l.i.d
425 / 390 / 113
Регистрация: 21.09.2012
Сообщений: 913
24.11.2012, 22:25
во время создания массива:
C++
1
bool goroda[100] = {false};
1
7 / 7 / 0
Регистрация: 01.11.2012
Сообщений: 26
24.11.2012, 22:28  [ТС]
Спасибо!
Я просто так писал: bool goroda[100] =false; -без фигурных скопок!

Добавлено через 15 секунд
скобок
0
19 / 11 / 0
Регистрация: 02.09.2010
Сообщений: 235
24.11.2012, 22:42
V.A.L.I.D, вы уверены что при
C++
1
bool goroda[100] = {false};
false'ом будут инициализированы все элементы массива? Я часто инициализирую вот так:
C++
1
char goroda[100] = {0,1,4,3};
В таком случае инициализируются только первые 4 элемента. Логично предположить что первый элемент инициализируется вот так:
C++
1
char goroda[100] = {0};
И потом в сети часто встречается запись ... = {0}; потому что 0 - конец строки и таким образом мы показываем что в массиве строка пуста. И такой инициализации достаточно, т.к. ниодна строковая функция не пойдет читать дальше первого элемента.
Поскольку это логично, я всегда считал что так оно и работает. Уточните пожалуйста

Добавлено через 3 минуты
kurban0303, если будете что-то инициализировать через цикл, значйте что memset выполняется быстрее. Особенно в СИ, там применяется restrict.
0
 Аватар для v.a.l.i.d
425 / 390 / 113
Регистрация: 21.09.2012
Сообщений: 913
24.11.2012, 22:51
Цитата Сообщение от Damaks Посмотреть сообщение
V.A.L.I.D, вы уверены что при
C++
1
bool goroda[100] = {false};
false'ом будут инициализированы все элементы массива?
Вот цитата из книги Дейтел. Как программировать на C++. 7 глава
"Если число инициализаторов меньше, чем число элементов в массиве, оставшиеся элементы инициализируются нулями"

получается все правильно. все элементы массива будут 0, т.е. false
1
19 / 11 / 0
Регистрация: 02.09.2010
Сообщений: 235
24.11.2012, 23:02
Спасибо, хотя я в этом не вижу логики. Язык, на мой взгляд, всётаки должен строить оптимальные по производительности конструкции и не делать того, что программист не просит. Но это дело вкуса
0
 Аватар для Venzo
127 / 125 / 16
Регистрация: 03.07.2011
Сообщений: 354
24.11.2012, 23:07
вроде все логично, если один из элементов инициализирован, то должны быть инициализированы все, а чем инициализировать, если не нулем?
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
24.11.2012, 23:10
Цитата Сообщение от Damaks Посмотреть сообщение
Оставшиеся 4 через операцию сдвига
Или выбелить 104 бита и выполнять
Честно говоря, я не понимаю о чем Вы.
0
19 / 11 / 0
Регистрация: 02.09.2010
Сообщений: 235
24.11.2012, 23:30
Цитата Сообщение от go Посмотреть сообщение
Честно говоря, я не понимаю о чем Вы.
Да, тупанул слегка, конечно же так:
C++
1
2
3
4
5
memset(&goroda[0],0,12);
goroda[96]=false;
goroda[97]=false;
goroda[98]=false;
goroda[99]=false;
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
24.11.2012, 23:34
Damaks, bool 1 байт. А я думаю, что где-то есть и по 2 байта. http://ideone.com/vsOX0J
Если нужны биты, то нужно использовать std::bitset.
0
19 / 11 / 0
Регистрация: 02.09.2010
Сообщений: 235
24.11.2012, 23:46
1 байт если 1 bool. А если массив bool'ов - они упаковываются в байт. Автор не уточнял что у него какая-та особая система.
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
24.11.2012, 23:58
Цитата Сообщение от Damaks Посмотреть сообщение
Автор не уточнял что у него какая-та особая система.
Тогда
C++
1
memset(city, 0, 100); // :)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.11.2012, 23:58
Помогаю со студенческими работами здесь

объявить массив целых чисел и заполнить его случайными значениями.Размерность массива 200, диапазон значений 0-100
объявить массив целых чисел и заполнить его случайными значениями.Размерность массива 200, диапазон значений 0-100

Заполнить 100 эл-тов текстового файла значениями последовательности 1 деленное на N, где N=1,..100 (консоль)
Заполнить 100 элементов текстового файла значениями последовательности 1 деленное на N, где N=1,2,3,..100. Переписать данные из файла в...

Дан массив размерности n. Заполнить массив случайными числами в диапазоне [-100;100]. Перевернуть массив:
Дан массив размерности n. Заполнить массив случайными числами в диапазоне . Перевернуть массив: a↔a, a↔a и т.д. Для работы с...

Создать массив размерностью 100 элементов со значениями от 0 до 100
Создать массив размерностью 100 элементов со значениями от 0 до 100. Вычислить количество простых элементов массива. В Visual Studio....

Заполнить матрицу значениями от 1 до 100 последовательно по столбцам, начиная с позиции [1,1]
Дана матрица 10х10. Заполнить эту матрицу значениями от 1 до 100 последовательно по столбцам, начиная с позиции . Нечетные столбцы...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru