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

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

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

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

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

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

Составить последовательность из нулей и единиц без соседних единиц - C++
помогите пожалуйста! проблема на экзамене составить последовательность из нулей и единиц без соседних единиц буду благодарен

Последовательность из 40 нулей и единиц - C++
Всем доброго времени суток. Дали задание курсовой, даже нет идей как это реализовать. Задание: Найти последовательность из 40...

Последовательность единиц и нулей - C++
помогите написать функцию которая посчитает и выведет число всех последовательностей например дана послед 1100010110100 здесь две по 11...

Построить последовательность b1 ... bn из нулей и единиц - C++
Дано натуральное число n и натуральная квадратная матрица порядка n, каждый элемент которой не превышает 9. Построить последовательность b1...

Создание массива С++ Сформировать последовательность из нулей и единиц - C++
Сформировать последовательность из нулей и единиц по следующему правилу – сначала вводится первый элемент 0 или 1. Затем на каждом шаге к...

Построить последовательность из нулей и единиц в матрице порядка n - C++
Даны натуральное число n, действительная квадратная матрица порядка n. Построить последовательность b1, b2, …, bn из нулей и единиц, в...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
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++
4669 / 2495 / 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
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
24.10.2009, 22:54 #13
не одно и то же?
Нет.
По стандарту языка C функция main() должна вернуть значение.
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
25.10.2009, 02:08 #14
Цитата Сообщение от ProNoooob Посмотреть сообщение
Вот лучший вариант. Он короче и правильней.
Ну и чем же он лучше/проще?
Он не универсален, не оптимизирован. Повторно такой код использовать нельзя! Вобщем Гэ...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.10.2009, 02:08
Привет! Вот еще темы с ответами:

Дано натуральное число n, получить последовательность нулей и единиц - C++
Дано натуральное число n, целые числа такие, что каждое a(i) равно нулю или единице и a(n) не равно нулю. Последовательность a0,...,a(n)...

Создайте одномерный массив, представляющий собой последовательность из нулей и единиц - C++
Создайте одномерный массив, представляющий собой последовательность из нулей и единиц (через функции формирования случайного числа)....

Последовательность а1, а2,., а n состоит из нулей и единиц. Поставить в начало этой последовательности нул - C++
Для решения задачи разработать следующие функции: – функцию ввода n элементов массива; – функцию вывода n элементов массива; –...

В строке, состоящей из групп нулей и единиц, найти и вывести на экран короткую группу - C++
В строке, состоящей из групп нулей и единиц, найти и вывести на экран короткую группу. Прога виводит только один сивол. Когда вводишь 111...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
25.10.2009, 02:08
Ответ Создать тему
Опции темы

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