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

Побитовые оперцации,перегруженные функции,действия с матрицами - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Открытие хранилища StgOpenStorage() и чтение данных из потока Read() http://www.cyberforum.ru/cpp-beginners/thread387337.html
Возникла следующая проблема: при чтении потока stream всё нормально, если строки объявлены в виде статических массивов. А если они объявлены динамически, то работает не корректно. Помогите! Сам не...
C++ Вопрос по циклам и условиям while(i <= el) { if(mas < A && mas < min) min = mas; i++; } есть такой цикл. поиск минимального при определенном условии. преподователь орет, что надо объеденить условие цикла и... http://www.cyberforum.ru/cpp-beginners/thread387335.html
Вывести на экран элемент, если он является наименьшим в своей строке и одновременно наибольшим в своем столбце или наоборот. C++
Для матрицы размером NxM вывести на экран все седловые точки. Элемент матрицы называется седловой точкой, если он является наименьшим в своей строке и одновременно наибольшим в своем столбце или...
Как удалить лидирующие нули? C++
Программа разворачивает числа, нужно сделать так, что бы лидирующие нули после переворота убирались, не знаю как :( : #include <iostream> #include <cstring> using namespace std; int main() {...
C++ Удвоить положительные четные элементы http://www.cyberforum.ru/cpp-beginners/thread387306.html
Я написал программу с помощью массивов, мне надо эту же программу написать с помощью функции Заранее спасибо. #include <iostream> #include <conio.h> #include <math.h> using namespace std; ...
C++ Даны 2 множества точек Доброй вечер, товарищи! Подскажите идею для решения задачи. Даны два множества точек на плоскости. Выбрать три различные точки первого множества так, чтобы круг, ограниченный окружностью,... подробнее

Показать сообщение отдельно
Thinker
Эксперт С++
4226 / 2200 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
19.11.2011, 21:42
Тогда вот вторая задача:
C
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
#include<stdio.h>
#include<string.h>
void Transform(char *s, char *t)
{
    long i, j, a = 0, n;
    char buf;
    n = strlen(s);
    for (i = 0; i < n; i += 4)
        a = a*10 + ((s[i] - '0')*8 + (s[i+1] - '0')*4 + (s[i+2] - '0')*2 + (s[i+3] - '0'));
    i = 0;
    do{
        t[i++] = (a & 1) + '0';
        a >>= 1;
    }while(a);
    t[i] = '\0';
    j = i - 1;
    i = 0;
    while(i < j)
    {
        buf = t[i]; t[i] = t[j]; t[j] = buf;
        i++; j--;
    }
}
 
int main()
{
    char s[128] = "001100010001", t[128];
    Transform(s, t);
    puts(t);
    return 0;
}
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru