С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 07.03.2012
Сообщений: 22
1

Цикл замены мест элементов

12.11.2012, 09:52. Показов 760. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста разобраться что не так с циклом замены мест элементов ??
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
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <locale>
#include <time.h>
 
 
using namespace std;
 
/* В двоичном файле целого типа поменять местами элементы, стоящие на четных местах с элементами, стоящими на нечетных местах.*/
class bin_stream
    : public fstream 
{   
public:
    bin_stream(const char *fn)
        : fstream(fn, ios::out | ios::in | ios::binary | ios::trunc) 
    {
    }
    void doneOurDate(const void*, int, int);
    bin_stream &operator<<(int d) 
    {  
        doneOurDate(&d, sizeof(d),0);
        return *this;  
    }
    bin_stream &operator>>(int &d) 
    {  
        doneOurDate(&d, sizeof(d),1);
        return *this;  
    }
};
 
 
int main()
{
    srand(time(0));
    int in;
    int element;
    int chetn,ne4etn;
    setlocale(LC_CTYPE, "rus");
    bin_stream bin_out("Binarnik.dat");
    if(!bin_out){cout<<"ErRoo\r"; exit(1);}
    for(int i=1;i<=4;i++)
    {
        element=i;
        bin_out<<element;
        
    }
    bin_out.seekp(0,ios::beg);
    for(int i=1;i<=4;i++)
    {
        
        bin_out>>element;
        cout<<element<<" ";
    }
    bin_out.seekp(0,ios::beg);
 
    for(int i=1;i<=4;i++)
    {
        
        if(i%2!=0)
        {
        bin_out>>in;
        ne4etn=in;
        }else
        {
            bin_out>>in;
            chetn=in;
 
            int t;
        t=ne4etn;
        ne4etn=chetn;
        chetn=t;
        cout<<endl<<ne4etn<<chetn<<endl;
        bin_out<<ne4etn;
        bin_out.seekp(i,ios::beg);
        
        bin_out<<chetn;
        }
        
    
    }
    cout<<endl;
    bin_out.seekp(0,ios::beg);
    for(int i=1;i<=4;i++)
    {
        
        bin_out>>element;
        cout<<element<<" ";
    }
    system("pause");
    return 0;
}
void bin_stream::doneOurDate(const void *Ptr, int len, int sign) 
{   
    if (!Ptr) return;
    if (len <= 0) return;   
    if (sign==0) write((char*)Ptr, len);
    else read((char*)Ptr, len);  
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.11.2012, 09:52
Ответы с готовыми решениями:

Заполнить двумерный массив номерами мест, подсчитать количество мест у окон и вывести на экран схему мест
В автобусе 6 рядов кресел по 4 места в каждом ряду. Чётные номера находятся у окон.Необходимо...

Написать программу замены элементов списков первого уровня на элементы списка самого низкого уровня в цикл
Пажалуйста помогите с задачкой Пример: (((a)) (b) (((c) e)) (((d)))) -&gt; ((c) (d) (c) (d))

БД Турфирма: сравнение доступних мест с количееством заказаних мест
К посту я додал частинку моей схеми БД Помогите мне решить проблему: в табл Тури вносится...

Смена мест элементов в стеке
помогите сделать и если можно то с каментариями Дан стек размера N (N — четное число). Поменять...

1
5499 / 4894 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
12.11.2012, 14:13 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
for(int i = 1; i <= 4; i++)
    {
        if(i % 2 != 0)
        {
            bin_out >> in;
            ne4etn = in;
        }
        else
        {
            bin_out >> in;
            chetn = in;
            
            int t;
            t = ne4etn;
            ne4etn = chetn;
            chetn = t;
            cout << endl << ne4etn << chetn << endl;
            
            bin_out.seekp(-2 * (int)sizeof(int), ios::cur);
            bin_out << ne4etn;
            bin_out << chetn;
        }
    }
0
12.11.2012, 14:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.11.2012, 14:13
Помогаю со студенческими работами здесь

Замена мест минимальных элементов
Постройте микропрограмнный аппарат,который выполняет превращение элементов массивов , A(n) і B(n)...

Смена мест элементов массива, упорядочивание
1. В массиве переставить местами 3 первых и 3 последних элемента, сохраняя их порядок. пример:...

Смена мест элементов массива, упорядочивание
1. В массиве переставить местами 3 первых и 3 последних элемента, сохраняя их порядок. пример:...

Перемена мест двух элементов массива (Swap)
Чем можно заменить в С# swap(b, b); Функция swap


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru