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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Oleg5
0 / 0 / 0
Регистрация: 05.10.2012
Сообщений: 16
#1

последовательность и запись исправте ошибки - C++

11.02.2013, 23:16. Просмотров 328. Ответов 0
Метки нет (Все метки)

Условия задания 1:
Найти среднее арифметическое положительных элементов данной последовательности.
Условия задания 2:
В выходную последовательность записать только те числа, которые меньше суммы своих соседей (если первое число меньше второго, записываем первое число; если второе число меньше суммы первого и третьего числа, записываем второе число, если последнее меньше предпоследнего, записываем последнее число)
Условия задания 3:
Найти максимальное чётное число и его порядковый номер, при отсутствии чётных чисел сообщить об этом

Задание 1. Длина последовательности целых чисел – случайное число от 10 до 30. Последовательность генерируется случайным образом или вводится с клавиатуры по желанию пользователя. Обработать эту последовательность без использования массива в соответствии с номером варианта. При вводе или генерации последовательность записать в файл Input.txt (первая компонента файла – количество элементов последовательности, остальные компоненты представляют собой элементы последовательности).
Задание 2. Из файла Input.txt, подготовленного в процессе выполнения Задания 1, вводится последовательность целых чисел известной длины (эта длина записана на первом месте в файле). Обработать эту последовательность без использования массива в соответствии с номером варианта. В процессе обработки записать результаты в файл Output.txt (все компоненты представляют собой элементы вновь получаемой последовательности).
Задание 3. Из файла Output.txt, подготовленного в процессе выполнения Задания 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
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
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
#include <iostream>
#include <fstream>
#include <time.h>
 
using namespace std;
double main_1(char name[]);
void main_2(char name1[], char name2[]);
int main()
{
    setlocale(0,"Russian"); 
    srand((unsigned) time(NULL));
    int size = 10 + rand() % 21;
    cout<< " последовательность состоит  из  " << N << " чисел " << endl;
    char Choise;
    cout << "1 - Заполнить последовательность вручную " << endl;
    cout << "2 - Заполнить последовательность случайными числами " << endl;
    cout << " --> Мой выбор : ";
        cin >> Choise;
    char name1[]="Input.txt";
    char name2[]="Output.txt";
    ofstream input(name1);
    if (!input)
    cout<<"файл не создан\n";
    
            
}
            case 1:
                Rand(nach, kon, N, "Input.txt");
                break;
            case 2:
                InF(N, "Input.txt");
                break;
            default:
                cout<<endl<<"Выберите 1 или 2 способ генерации последовательности!!!"<<endl;
    }           
{
 cout<<"файл не создан\n";
system("pause");
return 0;
}
 
 
int Rand(int nach, int kon, int N, char name[])
{
 int A;
    ofstream strm;
    strm.open(name);
    if (strm.is_open())
    {
        strm<<N<<endl;
        for (int i=1; i<=N; i++)
        {
            A=nach+rand()%(kon-nach+1);
            cout<<A<<"   ";
            strm<<A<<endl;
        }
    }
    else cout<<"Файл с данным именем отсутствует!!!"<<endl<<endl;
    strm.close();
    return 0;
}
int InFile(int N, char name[])
{
    int A;
    cout<<"Введите элементы последовательности: \n";
    ofstream strm;
    strm.open(name);
    if (strm.is_open())
    {
        for (int i=1; i<=N; i++)
        {
            cin>>A;
            strm<<A<<endl;
        }
    }
    else cout<<"Файл с данным именем отсутствует!!!"<<endl<<endl;
    strm.close();
    return 0;
}
 
double main_1(char name[])
{
     int size;
 ifstream in_file(name);
 in_file >> N;
     int temp,Sum;
        for(int i = 0 ; i < N  ; i++)
        {
in_file >> temp;
 
            if(temp > 0)
            {
  Sum = Sum + temp;
   }
        in_file.close();
        return double(Sum)/N;
    }
// задание 2
 int main_2(char name1[], char name2[] )
{
   ifstream In;
    ofstream Out;
    In.open(name1);
    Out.open(name2);
    int N;
    if ((In.is_open())&&(Out.is_open()))
    {
        In>>N;
        
int a1, a2,a3;
 
for (int i=1; i<=size; i++)
{
  if ((a1<a2)&&(a2<(a1+a3))&&(a1>a2))
else cout<<"Один из файлов отсутствует!!!"<<endl;
Out.close();
In.close();
return 0;
  }
{
int main_3(char name[])
{
    ifstream In;
    In.open(name);
}
int  max, a, i;
max=-1;
a=0;
i=i+1;
    
}
 else (mod(a,2)=0;
max=a;
max=i;
i=i+1;
}
else (a>max) && (mod(a,2)=0;
max=a;
max=i;
Out.close();
In.close();
    }
    {
system("pause");
return 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
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
использовать Файлы 
алг 
нач цел d, N, i, a, b, q, j, r, Мах, мах, f, S
если не существует файл ("Imput.txt")
то создать файл ("Imput.txt")
 
все
 
N:=int(rnd(30-10)+10)
вывод "длина последовательность", нс
вывод N
вывод "генерация  чисел- 1,ввод чисел - 2"
ввод i
если i=1
то
вывод "последовательность генерирует случайные числа", нс
вывод "Введите диапазон:", нс
вывод "a="
ввод a
вывод "b="
ввод b
если a>b
то j:=a
a:=b
b:=j
все
 
 
запись элементов (N, a, b)
иначе
вводэлементов (N)
все
вещ к;
 
к:=задание1 
вывод "среднего значение ", к, нс
S:=задание 3 ( i)
 
вывод "максимальное чётное число",S," и его порядковый номер =",i, нс
задание 2 
кон 
 
алг запись элементов (цел N, a, b)
нач цел r, i
открыть на запись ("Imput.txt", r)
нц N раз
i:= int(rnd(b-a)+a)
ф_вывод r, i, " "
кц
 
закрыть(r)
кон
 
 
алг вводэлементов ( цел N)
нач
цел r, i
открыть на запись ("Imput.txt", r)
нц N раз
вывод "введите число"
ввод i
ф_вывод r, i, " "
кц
 
закрыть(r)
кон
 
 
 
 
алг вещ задание1 
нач 
цел slag, i, d, f
вещ к=0
открыть на чтение ("Imput.txt", f)
i:=0
slag:=0
нц пока не конец файла (f)
ф_ввод f,d
если d>0
то i:= i+1
slag:= slag+d
 
все
кц
закрыть (f) 
если i>0
то 
к:= slag/i
иначе
вывод " нет положительных элементов " , нс
все
знач:=к
кон
 
алг задание 2 
нач
цел r, i, а1, а2, а3, х, ж, в,  с
если не существует файл ("Output.txt")
то создать файл("Output.txt")
все
открыть на чтение ("Imput.txt", r)
открыть на запись  ("Output.txt")
ф_ввод r, а2
ф_ввод r, а1
 
если а1<а2
то ф_вывод ж, а1, " "
все
 
нц пока не конец файла (r)
 
ф_ввод r,а3
 
 
если а2<а1+а3
то ф_вывод ж, а2, " "
все
а1:=а2
а2:=а3
кц
если а1>а2
то ф_вывод ж, а2, " " 
 
все
 
закрыть (r)
закрыть (ж)
 
кон
 
алг цел задание 3 (рез цел мах)
нач 
цел slag, i, d, S, а
вещ л=0
цел Мах
Мах:=-1
открыть на чтение ("Output.txt",S)
i:=0
нц пока не конец файла (S) и Мах=-1
ф_ввод  S, а
i:=i+1
если mod(а, 2)= 0
то 
Мах:=а
мах:=i
все
кц
нц пока не конец файла (S)
i:= i+1
ф_ввод S, а
если а>Мах и mod(а, 2)= 0
то
Мах:=а
мах:=i
 
все
кц
закрыть (S)
 
 
кон

вот просто справка как решать
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
#include <fstream>
#include <iostream>
#include <ctime>            // для генерации случайных чисел начиная с произвольного числа
using namespace std;
int main()
{    
     srand((unsigned)time(NULL));   // для генерации случайных чисел начиная с произвольного числа
     ofstream strm;                             // выходной поток-объект
     strm.open("c:/oonumber.txt");              // открываем
     if (strm.is_open())                        // проверка открытия
     { 
         for(int i = 0; i < 10; i++) strm << rand()%10 << endl;
         strm.close();                      // закрываем выходной поток-файл
      // суммирование чисел, записанных в файле
      // открываем тот же текстовый файл для чтения 
      ifstream strm("c:/oonumber.txt");
      if (strm)                          // проверка открытия 
      { int number, summa = 0, count = 0;
        // с файлом обращаемся так, как будто не знаем, сколько в нём чисел
        while(strm >> number)            // ввод числа
        { ++count;                       // подсчет количества
          summa+=number;                 // суммирование
        }
        cout << summa << "; " << count;  // вывод результатов
        strm.close();                    // закрываем поток-файл
      }
    }
     system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2013, 23:16     последовательность и запись исправте ошибки
Посмотрите здесь:

C++ Исправте ошибки в коде программы(их два варианта).
C++ Работа с массивом (исправте ошибки плз)
Ошибки в коде. Считывание/запись структуры в файл C++
C++ Запись крит. ошибки в файл
Исправте ошибки, Пожалуйста!) C++
Исправте ошибки C++
исправте ошибки пожалуйста C++
Исправте ошибки в программе C++
C++ Исправте ошибки в программе
C++ Ошибки при запись в файл через fwrite
C++ Упорядочить последовательность по не возрастанию суммы цифр , входящих в запись числа
Найти все натуральные числа, не превосходящие заданного и десятичная запись которых последовательность C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 00:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru