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

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

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

Однородный массив - C++

01.11.2013, 18:13. Просмотров 419. Ответов 15
Метки нет (Все метки)

Здравствуйте.
В общем мне нужно чтобы программа находила в массиве из 15 элементов (записал текстовый файл под название yes.txt и сохранил в папке объекта) максимальный из отрицательных элементов и поменять его местами с первым.
В общем программу написал, а тут не знай какая ошибка.
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
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <fstream>
#include <math.h>
using namespace std;
fstream f;
int main()
{int x[15],min,temp,i;
  f.open("yes.txt", ios::out);
  min=x[0];
  for(i=0;i<15;i++)
  {f>>x[i];
  if((x[i]<min)&&(min<0))
min=x[i];}
  temp=min;
  min=x[0];
  x[0]=temp;
  cout<<"min"<<min<<endl;
  for(i=0;i<15;i++)
  {cout<<"x["<<i<<"]="<<endl;
  cout<<x[i]<<endl;
 }
  f.close("yes.txt");
    return 0;
}
Спасибо
Миниатюры
Однородный массив  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.11.2013, 18:13     Однородный массив
Посмотрите здесь:

C++ Задать массив вещественных чисел и вставить в исходный массив число
C++ Добавление и удаление- Линейный однородный список (ЛОС)
C++ Задан вектор X[20]. Положительные числа переписать в массив Y, а отрицательные в массив W
C++ задача записать в массив отрицательные элементы матрицы в массив и вывести их
Массив: Составить массив из двух исходных по заданному принципу заполнения C++
C++ Однородный массив
Все положительные элементы из массива записать в массив A, а отрицательные в массив B C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
castaway
Эксперт С++
4873 / 3012 / 370
Регистрация: 10.11.2010
Сообщений: 11,061
Записей в блоге: 10
Завершенные тесты: 1
01.11.2013, 18:14     Однородный массив #2
Убери "yes.txt" в 24-й строке.
rafael999
0 / 0 / 0
Регистрация: 14.09.2013
Сообщений: 148
01.11.2013, 18:17  [ТС]     Однородный массив #3
Теперь выпригивает белое окошко с записью Run-Time Check Failure #3 - The variable 'x' is being used without being initialized
castaway
Эксперт С++
4873 / 3012 / 370
Регистрация: 10.11.2010
Сообщений: 11,061
Записей в блоге: 10
Завершенные тесты: 1
01.11.2013, 18:20     Однородный массив #4
Это уже другая ошибка, которая говорит о том, что ты используешь массив x, хотя он не инициализированный (11-я строка).
Можно заменить её на: min = 99999999;
rafael999
0 / 0 / 0
Регистрация: 14.09.2013
Сообщений: 148
01.11.2013, 18:25  [ТС]     Однородный массив #5
Чето не так
Миниатюры
Однородный массив  
castaway
Эксперт С++
4873 / 3012 / 370
Регистрация: 10.11.2010
Сообщений: 11,061
Записей в блоге: 10
Завершенные тесты: 1
01.11.2013, 18:30     Однородный массив #6
А ну да, у тебя же в файле отрицательные числа? Тогда должно так работать: min = -1;
rafael999
0 / 0 / 0
Регистрация: 14.09.2013
Сообщений: 148
01.11.2013, 18:37  [ТС]     Однородный массив #7
Тоже самое. Может я файл не туда впихнул, куда его поместить?
castaway
Эксперт С++
4873 / 3012 / 370
Регистрация: 10.11.2010
Сообщений: 11,061
Записей в блоге: 10
Завершенные тесты: 1
01.11.2013, 18:38     Однородный массив #8
Может быть. Положи в: c:\Users\Azakov\Desktop\лаб\1dmassiv\1dmassiv\Debug
rafael999
0 / 0 / 0
Регистрация: 14.09.2013
Сообщений: 148
01.11.2013, 18:44  [ТС]     Однородный массив #9
Не работает короче. Ну и фиг с ней. Спасибо
castaway
Эксперт С++
4873 / 3012 / 370
Регистрация: 10.11.2010
Сообщений: 11,061
Записей в блоге: 10
Завершенные тесты: 1
01.11.2013, 18:47     Однородный массив #10
Погоди. Ты еще файл не правильно открываешь.
Измени 10-ю строку на: f.open( "yes.txt", fstream::in );
rafael999
0 / 0 / 0
Регистрация: 14.09.2013
Сообщений: 148
01.11.2013, 18:50  [ТС]     Однородный массив #11
Я не понимаю откуда эта цифра?
Изображения
 
castaway
Эксперт С++
4873 / 3012 / 370
Регистрация: 10.11.2010
Сообщений: 11,061
Записей в блоге: 10
Завершенные тесты: 1
01.11.2013, 18:51     Однородный массив #12
И я не понимаю. Выложи файл yes.txt. Сейчас посмотрим..
rafael999
0 / 0 / 0
Регистрация: 14.09.2013
Сообщений: 148
01.11.2013, 18:54  [ТС]     Однородный массив #13
Я туда файл выкладываю(в папку), а он сам по себе чистит его
castaway
Эксперт С++
4873 / 3012 / 370
Регистрация: 10.11.2010
Сообщений: 11,061
Записей в блоге: 10
Завершенные тесты: 1
01.11.2013, 18:55     Однородный массив #14
Можно прикрепить как zip-архив, можно в тэг QUOTE содержимое скопировать.
rafael999
0 / 0 / 0
Регистрация: 14.09.2013
Сообщений: 148
01.11.2013, 18:56  [ТС]     Однородный массив #15
Нет я про папку debug, я туда файл перемещаю, и после первого же запуска проги он очищается
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.11.2013, 19:00     Однородный массив
Еще ссылки по теме:

C++ Определить степени вершин графа и если граф однородный - вывести степень однородности
Как в массив скопировать массив, который заполнен через указатели C++
Дан массив. Создать массив 2 из четных чисел первого массива C++

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

Или воспользуйтесь поиском по форуму:
castaway
Эксперт С++
4873 / 3012 / 370
Регистрация: 10.11.2010
Сообщений: 11,061
Записей в блоге: 10
Завершенные тесты: 1
01.11.2013, 19:00     Однородный массив #16
Странно.. Попробуй положить файл например в корень диска C, а явно путь пропиши.
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
#include <iostream>
#include <fstream>
 
using namespace std;
 
int main() {
    fstream f;
    int x[15], min, temp, i;
    f.open( "c:\\yes.txt", fstream::in );
    min = -1;
    for ( i = 0; i < 15; i++ ) {
        f >> x[i];
        if ( (x[i] < min) && (min < 0) ) min = x[i];
    }
 
    temp = min;
    min = x[0];
    x[0] = temp;
 
    cout << "min = " << min << endl;
 
    for ( i = 0; i < 15; i++ ) {
        cout << "x[" << i << "] = " << x[i] << endl;
    }
    f.close();
    return 0;
}
Этот код у меня выводит числа из файла, правда мне непонятна логика работы программы.
Yandex
Объявления
01.11.2013, 19:00     Однородный массив
Ответ Создать тему
Опции темы

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