Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 5.00
Maskca
1 / 0 / 0
Регистрация: 15.12.2008
Сообщений: 97
#1

Как вывести последовательность с нулей и единиц? - C++

24.10.2009, 17:59. Просмотров 1374. Ответов 13
Метки нет (Все метки)

Подскажите как вывести последовательность из n елементов с нулей и единиц, тоисть например n = 5, то последовательность должна быть 01010
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.10.2009, 17:59     Как вывести последовательность с нулей и единиц?
Посмотрите здесь:

C++ Последовательность единиц и нулей
C++ Построить последовательность b1 ... bn из нулей и единиц
C++ Последовательность из 40 нулей и единиц
Построить последовательность из нулей и единиц в матрице порядка n C++
C++ Создание массива С++ Сформировать последовательность из нулей и единиц
В строке, состоящей из групп нулей и единиц, найти и вывести на экран короткую группу C++
Получить все n-элементные последовательности из нулей и единиц содержащие ровно m единиц (m<=n) C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ProNoooob
72 / 72 / 6
Регистрация: 14.10.2009
Сообщений: 121
24.10.2009, 18:14     Как вывести последовательность с нулей и единиц? #2
Научитесь вопросы задавать чтоли.
По какому алгоритму преобразовать 5 в нули и единицы?
Перевести в двоичную систему? ну тогда 5 это совсем не 01010
Maskca
1 / 0 / 0
Регистрация: 15.12.2008
Сообщений: 97
24.10.2009, 18:56  [ТС]     Как вывести последовательность с нулей и единиц? #3
Цитата Сообщение от ProNoooob Посмотреть сообщение
Научитесь вопросы задавать чтоли.
По какому алгоритму преобразовать 5 в нули и единицы?
Перевести в двоичную систему? ну тогда 5 это совсем не 01010
Не нужно ничего преобразововать нужно просто вывести просто последовотельность из нулей и единиц и их количество должно быть n, тоисть если бы n было 10 то последовательность была бы 0101010101
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
24.10.2009, 19:11     Как вывести последовательность с нулей и единиц? #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
 
char* byte_to_binstr(unsigned char v, char* buf) {
   for ( unsigned int i = 0; i < sizeof(v)*8; i++ ) {
      buf[i] = (v >> i & 1)+'0';
   }
   return buf;
}
 
int main() {
   unsigned char num = 167;
   char buff[128] = "\0";
 
   printf("number: %d, is: %s\n", (int)num, byte_to_binstr(num, buff));
 
   return 0;
}
Neonjke
18 / 18 / 1
Регистрация: 08.10.2009
Сообщений: 94
24.10.2009, 20:27     Как вывести последовательность с нулей и единиц? #5
Цитата Сообщение от Maskca Посмотреть сообщение
Подскажите как вывести последовательность из n елементов с нулей и единиц, тоисть например n = 5, то последовательность должна быть 01010
Вот решение попроще:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <conio.h>
#include <stdio.h>
 
 
 
void main()
{
int i,n;
 
printf("Vvedite N:\n");
scanf("%d",&n);
 
for (i=1; i<=n; i++)
    {
     if (i%2==0)
         printf("1");
     else
         printf("0");
    }
getch();
}
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
24.10.2009, 20:30     Как вывести последовательность с нулей и единиц? #6
Цитата Сообщение от Neonjke Посмотреть сообщение
Вот решение попроще:
Чем проще?
Neonjke
18 / 18 / 1
Регистрация: 08.10.2009
Сообщений: 94
24.10.2009, 20:41     Как вывести последовательность с нулей и единиц? #7
Цитата Сообщение от niXman Посмотреть сообщение
Чем проще?
Пониманием))
Я, человек, который изучает C 1.5 месяца (по программе университета) не в состоянии понять, что у Вас значат некоторые строки.
Мой же вариант базируется исключительно на основах C, и понятен любому, кто хотя-бы на уровне первых 10 страниц книги "Самоучитель по C++" знает язык.
А, учитывая, что задача, которую просят решить, относительно простая, то человеку скорее всего будет гораздо понятней мой вариант решения.
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
24.10.2009, 20:57     Как вывести последовательность с нулей и единиц? #8
Цитата Сообщение от Neonjke Посмотреть сообщение
Мой же вариант базируется исключительно на основах C
Покажи в моем коде, хоть что-то не являющееся частью Си.

Цитата Сообщение от Neonjke Посмотреть сообщение
книги "Самоучитель по C++"
Мы говорим про Си. И в вашем коде, не ничего от С++.

п.с.
качество кода неважное...
ProNoooob
72 / 72 / 6
Регистрация: 14.10.2009
Сообщений: 121
24.10.2009, 21:12     Как вывести последовательность с нулей и единиц? #9
Цитата Сообщение от Neonjke Посмотреть сообщение
Вот решение попроще:
Ваш код ужасен и содержит ошибки.
1)
C
1
void main
2) main не возвращает никакого значения.

Вот лучший вариант. Он короче и правильней.

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <conio.h>
#include <stdio.h>
 
int main()
{
int i,n;
 
printf("Vvedite N:\n");
scanf("%d", &n);
 
for (i = 1; i <= n; i += 2)
{
    printf("1");
    if(i + 1 <= n)
        printf("0");
}
 
getch();
return 0;
}
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.10.2009, 21:24     Как вывести последовательность с нулей и единиц? #10
Вариант:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <conio.h>
#include <stdio.h>
int main()
{
int i,n;
printf("Vvedite N:\n");
scanf("%d", &n);
for (i = 1; i <= n-1; i += 2)
    printf("01");
if(i==n)
    printf("0"); 
getch();
return 0;
}
Neonjke
18 / 18 / 1
Регистрация: 08.10.2009
Сообщений: 94
24.10.2009, 22:09     Как вывести последовательность с нулей и единиц? #11
Цитата Сообщение от ProNoooob Посмотреть сообщение
Ваш код ужасен и содержит ошибки.
Извините, если я чего то недопонимаю, но разве

void main()
{
}

и

int main()
{
return 0;
}

не одно и то же?
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
24.10.2009, 22:47     Как вывести последовательность с нулей и единиц? #12
еще вариант:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
#include <iostream.h>
#include <conio.h>
 
int main()
{
int n;
cout << "Vvedite N:\n";
cin >> n;
for (int i = 1; i <= n; i++)
    cout << (i+1)%2;  // Заменить на i%2, если первой должна быть единица
getch();
return 0;
}}
odip
Эксперт С++
7153 / 3293 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
24.10.2009, 22:54     Как вывести последовательность с нулей и единиц? #13
не одно и то же?
Нет.
По стандарту языка C функция main() должна вернуть значение.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.10.2009, 02:08     Как вывести последовательность с нулей и единиц?
Еще ссылки по теме:

Дано натуральное число n, получить последовательность нулей и единиц C++
C++ Последовательность а1, а2,., а n состоит из нулей и единиц. Поставить в начало этой последовательности нул
C++ Составить последовательность из нулей и единиц без соседних единиц
C++ В заданной матрице состоящей из нулей и единиц найти квадратную подматрицу, состоящую целиком из нулей
String char айти самую длинную непрерывную цепочку нулей в последовательности нулей и единиц C++

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

Или воспользуйтесь поиском по форуму:
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
25.10.2009, 02:08     Как вывести последовательность с нулей и единиц? #14
Цитата Сообщение от ProNoooob Посмотреть сообщение
Вот лучший вариант. Он короче и правильней.
Ну и чем же он лучше/проще?
Он не универсален, не оптимизирован. Повторно такой код использовать нельзя! Вобщем Гэ...
Yandex
Объявления
25.10.2009, 02:08     Как вывести последовательность с нулей и единиц?
Ответ Создать тему
Опции темы

Текущее время: 21:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru