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

Обработка битовых последовательности (Срочно) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Объединить числа в матрицу http://www.cyberforum.ru/cpp/thread81953.html
Подскажите пожалуйста, как составить данную программу. Если можно простыми операциями. Задача первого курса института. Язык С++ dev. 2 массива: 10 и 15 чисел. Объеденить их в матрицу 2х15. Числа, которых не хватит, записать 0. #include <cstdlib> #include <iostream>
C++ Проход матрицы используя указатели Никогда не любил использовать указатели, а мне сказали мол лабу надо делать еще и на указателях. Условие: узнать совпадают ли сумы элементов в масиве по строкам и столбцам. Пыталься что-то сделать, в результати получил следующий код: #include <stdio.h> #include <stdlib.h> int R(int* a) { //иницыализирую переменные под сумы int sc = 0, sb; http://www.cyberforum.ru/cpp/thread81864.html
Сижу на зачете !! C++
Народ, плиз помоите. сижу на зачете. Написать прогу котрая считывает массив целых чисел с клавиатуры, пользователь вводит значение и прога ищет это значение в массиве... ПЛИЗ с использованием указателей
Страж включения - это... ? C++
Всем доброго времени суток. Меня заинтересовал такой вот вопрос - Что такое "Страж включения", для чего используется, и "с чем его едят" ? ))
C++ Ошибка сегментации... http://www.cyberforum.ru/cpp/thread81539.html
Пытаюсь написать программу, которая может хранить массив из произвольного числа объектов класса. Но при попытке записать данные в класс, программа вылетает. Как же быть? Оператор new - НЕ подходит, т. к. количество объектов массива может быть изменено в любой момент, и следовательно, память будет постоянно "перевысвобождаться". Вот эксиз класса: class person {
C++ ошибка vs когда пытаюсь запустить игру выходит ошибка http://www.cyberforum.ru/games/thread42138-page2.html мне кажется что это из-за visual studio , помогите может кто знает в чём проблема. Добавлено через 2 часа 36 минут проблема: хочу например поиграть в gta 4, при запуске не дает запустится visual studio 2005 выпрыгивает окошко, какая-то там отладка нужна и т.д и не запускается игра, как от нее... подробнее

Показать сообщение отдельно
Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
03.01.2010, 15:44     Обработка битовых последовательности (Срочно)
знаковый разряд не будем учитывать т.к. в задаче говорится что чило отрицательное заведомо.
вот: пример -7 это 111 в прямом коде без учета знакового разряда, -7 в дополнительном коде это 1001 тоже без учета знакового разряда. тест: вводим 1001 получаем 111, все рабоет.
алгорим такой:
Xдоп - число в дополнительном коде.
отнять единицу от Xдоп
нужно ивертировать каждый разряд числа (Xдоп - 1)
получим чило в прямом коде.
в данное программе счиатется что сило имеет столько разрядов скольо было введено
например 10 только два, и прямой код для этого числа будет 10, а если нужено больше разрядов то
00000010 - байт. для него прямой код 11111110.
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <iostream>
#include <conio.h>
#include <string>
using namespace std;
 
void subone(string &x,int i) //âû÷åñòü åäèГ*èöó. x - ÷èñëî, ïîðÿäîê(i)=ïîðÿäîê(ГІГҐГЄГ№ГЁГ© Г°Г*çðÿä)
{
     
     if (x[i]=='1')//ГІГҐГЄГіГ№ГЁГ© Г°Г*çðÿä Г°Г*ГўГҐГ* 1
        x[i]='0'; //âûäåëèòü ГЁ îáГ*óëèòü ГІГҐГЄГіГ№ГЁГ© Г°Г*çðÿä
     else
     {        //ГІГҐГЄГіГ№ГЁГ© Г°Г*çðÿä Г°Г*ГўГҐГ* 0...
         x[i]='1'; //...Г§Г*ìåГ*ГЁГІГј Г*Г* 1 ГЁ...
         if(i>0)subone(x,i-1);//...âû÷åñòü ГЁГ§ áîëèå Г±ГІГ*ðøåãî Г°Г*çðÿäГ*.
     }
}
 
void negative(string &x,int i) //ïîðГ*çðÿäГ*Г*Гї ГЁГ*âåðñèÿ Г·ГЁГ±Г«Г*.
{
     if (x[i]=='1')  //åñëè Г°Г*çðÿä 1 ГІГ®...
     {
        x[i]='0';   //...Г*Г*äî ГҐГЈГ® îáГ*óëèòü ГЁ...
     }
     else
     {            //åñëè Г°Г*çðÿä 0 ГІГ®...
         x[i]='1';//Г*Г*äî ГіГ±ГІГ*Г*îâèòü ГҐГЈГ® Гў 1 ГЁ...
     }
     if (i>0)negative(x,i-1); //...ïðåéòè ГЄ áîëèå Г±ГІГ*ðøåìó Г°Г*çðÿäó
}
 
int length(string str)
{
    int i=0;
    while (str[i]!='\0')i++;
    return i;
}
 
int main()
{
    cout << "enter edd codded number\n";
    string s;
    cin >> s;
    subone(s,length(s)-1);//вычесть единицу
    cout << "sub 1 = " << s << endl;
    negative(s,length(s)-1);//поразрядно инверсировать
    cout << "Prime coded num " << s << endl;
    getch();
}
 
Текущее время: 14:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru