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

В двоичном файле поменять местами максимальное среди отрицательных и наибольшее среди простых - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Проверьте, пожалуйста , файловый ввод и вывод http://www.cyberforum.ru/cpp-beginners/thread1563194.html
Здравствуйте! Есть такой код с оформленным уже файловым вводом и выводом. И также, в папке с этим кодом есть output.txt и input.txt. Правильно ли я написал в коде работу с файлами? #include <set> #include <bitset> #include <queue> #include <deque> #include <set> #include <bitset> #include <queue> #include <deque> #include <stack>
C++ Программа не проходит по времени Здравствуйте, есть программа, которая по заданным точкам находит четырёхугольник максимальной площади, максимально точек - 300. На тесте 150 - работает 404 мс, на тесте 300 - тл, как её можно дооптимизировать, чтобы проходила на тесте 300? #include <iostream> #include <cstdio> #include <cstdlib> #include <algorithm> #include <vector> #include <math.h> #include <iomanip> using namespace... http://www.cyberforum.ru/cpp-beginners/thread1563180.html
Вычислить и вывести на экран в виде таблицы значения функции F, на интервале от Хнач до Хкон с шагом dX C++
Совсем не получается сделать. Постоянно какие-нибудь ошибки. Если кому-нибудь не трудно помочь, буду признательна
Цикл для построчного считывания из файла C++
Добрый день, бьюсь над следующей проблемой. Мне необходимо считать из файла, данные в структуру. В текстовом файле данные хранятся следующим образом: Фамилия Имя Дд мм гг Фамилия Имя Дд мм гг Фамилия Имя
C++ Unicode и выбор внутренней кодировки программы http://www.cyberforum.ru/cpp-beginners/thread1563158.html
Для Unucode, если в программе посимвольная работа с текстом, то какое лучше выбрать решение в плане кодировки и работы с ней? На пример, потребуется прыгнуть на 25-й символ. И подобные вещи. Как известно любой юникодовый элемент полностью влазит в 4 байта. И можно было бы просто взять кодировку UTF-32, но как-то жаба давит. Для экономии придумали не выдавать под символы лишних байт, если в...
C++ ООП С++ прямоугольник Вообщем написал код забыв кинуть его по файлам (hpp и cpp),не было ошибок синтаксиса и вроде бы все было прекрасно как вдруг выбило кучу ошибок как только распихал по файлам. Только начал изучать ООП поэтому с этим проблемы) помогите правильно код распихать пожалуйста) то что было до файлов: http://ideone.com/eY6U4o http://ideone.com/uDsZkP 1ый файл http://ideone.com/apfi0v 2ой файл ... подробнее

Показать сообщение отдельно
Azario
3 / 3 / 1
Регистрация: 27.10.2012
Сообщений: 41
27.10.2015, 08:02     В двоичном файле поменять местами максимальное среди отрицательных и наибольшее среди простых
Задание
Кликните здесь для просмотра всего текста

Задание: составить две программы. Первая программа
должна формировать двоичный файл. Вторая программа должна считать данные
из двоичного файла, выполнить соответствующие вычисления и записать их
результаты в текстовый файл.
Задача: Создать двоичный файл, куда записать n целых чисел. В файле поменять
местами максимальное среди отрицательных и наибольшее среди простых.

Помогите, пожалуйста, исправить ошибки в данном коде, пытался написать код и чувствую где-то капитально не правильно написал, создание и вывод файла нормально работает, а вот основная задача....
Кликните здесь для просмотра всего текста

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
#include <iostream>
using namespace std;
 
FILE *f;
void print();
int solution();
int main()
{
    char s[20]; 
    cout << "File name? "; cin >> s;
    f=fopen(s, "rb");
    print();
    f=fopen(s, "rb");
    cout << solution() << endl;
    system("pause");
}
 
void print()
{int a;
    for (; fread(&a, sizeof(int), 1, f); )
        cout << a << " ";
    cout << endl;
}
int solution()
{ int a, min=1, max=1, max_i, min_i;
    for (; fread(&a, sizeof(int), 1, f); )
    {   
        for (int i=0; i<20; i++)
            if (max < a)
            {
                max = a;
                max_i = i;
            }
            if (min > a) 
            {
                min = a;
                min_i = i;
            }
    }
    
 
for (int i=0; i<1; i++)
{
    s[min_i] = max;
    s[max_i] = min
}
cout << endl;
for (int i=0; i<20; i++)
{
    cout << s[i] << " ";
}
cout << endl;
cout << "ГЊГ*ГЄГ±ГЁГ¬Г*ëüГ*ûé ýëåìåГ*ГІ = " << max << endl;
cout << "ГЊГЁГ*ГЁГ¬Г*ëüГ*ûé ýëåìåГ*ГІ = " << min << endl;
system("pause");
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru