Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.11.2012, 23:46   #1
Olga@->-->--
 
Регистрация: 26.11.2012
Сообщений: 7
Радость Одномерный массив (готовый код 2)

№2 В одномерном массиве, состоящем из чётного количества элементов, найти максимальный элемент в первой половине массива и во второй половине массива. Исходные данные считать из файла и результат записать в файл.
// massiv44.cpp: определяет точку входа для консольного приложения.
//
#include "stdafx.h"
#include"iostream"
#include <fstream>
#include<stdlib.h>
#include <stdio.h>
#include <io.h>
#include <time.h>
#include <fcntl.h>
#include <sys/stat.h>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{ const int n=10; //константа для размера массива
int i=0;
int A[n];
FILE *f_in;
char *name1="D:\olga.txt"; //строковая переменная, в которой хранится имя файла со значениями элемнтов массива

printf("\nReading numbers for Array elements:\n");
if ( (f_in=fopen(name1, "r"))==NULL ) // проверяем возможность открытия файла
{
perror("Source array data file read error!: "); //Печатаем сообщение с описанием ошибки, если файл не открыт
return 1; // Выходим из программы с кодом ошибки 1
}
else // иначе
{
while (!feof(f_in) && (i < n)) // в цикле пока (не закончился файл) или (наберём 20 элементов)
{
fscanf(f_in, "%i", &A[i++]); //считываем очередное число типа флоат из файла в следующий элемент массива
}

fclose(f_in); // закрываем файл по окончании процесса считывания
}

for (int i=0; i<n; i++)
{cout<<A[i]<<'\t';
}

// Инициализировать max первым элементом первой части массива.
int max1 = A[0];
// Инициализировать max первым элементом второй части массива.
int max2 = A[n/2];

// Найти максимальный элемент в первой половине массива.
for (int i = 0; i < n/ 2; i++)
{
if (A[i] > max1)
max1 = A[i];
}

// Найти максимальный элемент во второй половине массива.
for (int i = n / 2; i < n; i++)
{
if (A[i] > max2)
max2 = A[i];
}
cout<<"\n maxelemet pervoj chasti:"<<max1<<'\n';

cout<<"\n maxelemet vtoroj chasti:"<<max2<<'\n';

fstream ff;
ff.open("D:\olga.txt" , ios::app);
ff<<"\n maxelemet pervoj chasti:"<<max1<<'\n';
ff<<cout<<"\n maxelemet vtoroj chasti:"<<max2<<'\n';

ff.close();
system ("pause");
return 0;}
Olga@->-->-- вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Одномерный массив готовый код Olga@->-->-- Помощь студентам 6 27.11.2012 23:41
доработать готовый код с++ pametol Фриланс 3 02.07.2011 09:50
Одномерный массив(Паскаль). Упростить код AnL Помощь студентам 1 17.12.2009 01:37
одномерный массив в Си ! Исправьте код! osichev Помощь студентам 3 04.06.2009 17:14