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

Удалить две последние столбцы (то есть убрать нули) С++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Перевернуть строки в матрице http://www.cyberforum.ru/cpp-beginners/thread1052967.html
в чем ошибка? не переворачивает нужную строку. #include <iostream> #include <cstdlib> using namespace std; int main() { int m, n, **a, i, j, s; cout<<"vvedite kol-vo strok "; cin>>m; cout<<"vvedite kol-vo stol-v "; cin>>n; a = new int *;
C++ в чем ошибка? #include <iostream> #include <cmath> using namespace std; int main(){ int a,b,h,y; cin»a»b»h; for(int i=a; i<=b; i+=h) { if(abs(i)<=1) y=i*i-1; else if(abs(i)>1 && abs(i) <=2) y = 2*i-1; http://www.cyberforum.ru/cpp-beginners/thread1052951.html
Работа со строками. Удаление отдельных символов C++
Есть проблемка: нужно написать программу, которая бы удаляла те слова, в которых есть цифры. Вот с этого я начал, дальше даже не могу представить что делать: #define _CRT_SECURE_NO_WARNINGS #include <conio.h> #include <clocale> #include <iostream> #include <string> #include <string.h> //для char
Заполнение структуры через функцию C++
Здравствуйте помогите пжл, нужно реализовать заполнение структуры через функцию в этой проге #include <stdio.h> #include <stdlib.h> #include "conio.h" #include <string.h> #include "locale.h" #include <tchar.h> struct PRICE{
C++ как подружить MSXML VSC++2012 ? http://www.cyberforum.ru/cpp-beginners/thread1052933.html
Нужно написать программу, которая будет работать с xml документами с помощью MSXML.(редактирует, читает, сохраняет) Может поможете примерчиком простеньким!!! А то что-то не вьеду я никак... Беру пример вот от сюда http://www.rsdn.ru/article/xml/msxml.xml Какие инклуды надо подключать, да и вообще...
C++ Известны фамилия, имя и отчество пользователя. Найти его код личности Известны фамилия, имя и отчество пользователя. Найти его код личности. Правило получения кода личности: каждой букве ставится в соответствие число - порядковый номер буквы в алфавите. Эти числа складываются. Если полученная сумма не является однозначным числом, то цифры числа снова складываются и так до тех пор, пока не будет получено однозначное число. Проблема при преобразовании в... подробнее

Показать сообщение отдельно
мраз13
Сообщений: n/a

Удалить две последние столбцы (то есть убрать нули) С++ - C++

23.12.2013, 02:54. Просмотров 489. Ответов 0
Метки (Все метки)

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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
// 1.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include <cmath>
#include <iomanip>
 
using namespace std;
 
int get_power (int a) //возврат степени двойки числа
{
    return ceil(log10(double(a))/log10(double(2)));
}
 
int del_mod2 (int a, int b) //возврат остатка от деления по модулю 2 числа а на б
{   
     
     while (get_power(a) >= get_power(b)) 
     {
           int b2 = b;
           while (get_power(b2) != get_power(a))
                 b2 *=2;
           a = a ^ b2; 
     }          
     return a;
}    
bool* inttobool(int a) //Преобразование числа из десятичной системы в двоичную
{
    bool * mass;
    mass=new bool;
    for(int l=7;l>=0;l--)
    {
        if(a%2)
            mass[l]=1;
        else mass[l]=0;
        a=a/2;
    }
    return mass;
}
 
int booltoint(bool *a) //Преобразование числа из двоичной системы в десятичную
{
    int b=0;
    for(double l=7;l>=0;l--)
        if(a[int(l)])b=b+pow(2,7-l);
    return b;
}
 
void show(int a) //вывод числа в двоичном виде
{
    for(int i=1;i<=7;i++)
        cout<<inttobool(a)[i];
    cout<<endl;
}
 
bool* sum(int a,int b)
{
    bool* ba=new bool; ba=inttobool(a);
    bool* bb=new bool; bb=inttobool(b);
    bool* bc=new bool;
    for(int i=0;i<=7;i++)
    {
        if((ba[i]==1)&&(bb[i]==1))bc[i]=0;
        if((ba[i]==0)&&(bb[i]==0))bc[i]=0;
        if((ba[i]==1)&&(bb[i]==0))bc[i]=1;
        if((ba[i]==0)&&(bb[i]==1))bc[i]=1;
    }
    return bc;
}
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(0, "russian");
    int a=10, m=9;
int err_q[7]={0,0,0,0,0,0,0},
    err_s[7]={0,0,0,0,0,0,0},
    err_d_mass[7]={0,0,0,0,0,0,0};
    int err_d=0;
 
    cout<<"---------------------КОДИРОВАНИЕ---------------------\n";
    cout<<setw(40)<<"Информационный вектор: ";
    show(a);
    a*=8;
    cout<<setw(40)<<"Сдвинутый информационный вектор: ";
    show(a);
    a=a+del_mod2(a,m);
    cout<<setw(40)<<"Передаваемая информация: ";
    show(a);
    cout<<endl<<"--------------------ДЕКОДИРОВАНИЕ--------------------";    
    for(int e=1;e<128;e++)
    {
        int temp_a=a;
        int rem=1;
        int N=0;
 
        for (int j = 1; j < 128; j *= 2) 
            if((e & j) != 0)
                N ++;
        temp_a=booltoint(sum(temp_a,e));
        rem=del_mod2(temp_a,m);
        if(rem!=0)
            err_d_mass[N-1]++;
    err_q[N - 1] ++;
    }
                                                                                                                                                                                                                                                    //for(int i=1;i<14;i++)err_d_mass[i]++;
    cout<<endl<<"-------------ДЕКОДИРОВАНИЕ ПРОШЛО УСПЕШНО------------"<<endl;
    cout<<"------------------СТАТИСТИКА-------------------------\n";
    cout<<"|Кратность|Количество|Кол-во обнаруж.|Коэф. обнаруж.|\n";//Коэф
    cout<<"|  ошибки |  ошибок  |     ошибок    |   ошибок, %  |\n";//корректировки
    cout<<"|---------+----------+---------------+--------------|\n";
    for(int i=0;i<7;i++)
        cout<<'|'<<setw(9)<<i+1<<'|'<<setw(10)<<err_q[i]<<'|'<<setw(15)<<err_d_mass[i]<<'|'<<setw(14)<<err_d_mass[i]*100/err_q[i]<<'|'
        <<setw(12)<<err_s[i]<<'|'<<setw(13)<<err_s[i]*100/err_q[i]<<'|';
    cout<<"-----------------------------------------------------"<<endl;
        
    system("pause");
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru