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

Обработка массива - C++

Восстановить пароль Регистрация
 
dimm93
0 / 0 / 0
Регистрация: 19.01.2012
Сообщений: 7
09.10.2012, 21:05     Обработка массива #1
Помогите напи сать программу по заданному исходнику под Visual C++

Задание:
Заданы два массива X=(x1,x2,...,xn) и Y = (y1,y2,...,ym), в состав которых входят натуральные числа, причем в каждом из этих массивов нет повторяющихся элементов. Сформировать массив Z, включив в него все элементы, которые одновременно содержатся в массиве X и массиве Y.
Подсчитать количество неповторяющихся элементов в обоих массивах.
Все положительные числа в массиве Z переставить в обратном порядке, не изменяя положения остальных чисел. Буферный массив не использовать.


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
Шаг 1. Создать файл “vect.hpp” с описанием класса «Vect».
 
 # include <stdio.h>
  class Vect   {     int *v; // начальный адрес одномерного массива       int dim; // размерность
 public:
    Vect(int); // конструктор
    int dimen() // функция, возвращающая размерность массива
    {return dim;}
    void in_val_a(FILE *fin);  // ввод элементов массива из файла
    void display(FILE *fout); // вывод массива в файл
    void show();// вывод массива на экран
    int sum(); // вернуть сумму элементов массива
    }; // конец описания класса
 
Шаг 2. Создать файл “vect.сpp” с реализацией интерфейса класса «Vect».
 
# include <iostream.h>
# include "vect.hpp"  
 Vect::Vect(int d) // конструктор      {       if (d<=0)      printf("\n Size error:");       else { dim=d; v=new int[d];};//задам размерность вектора, выделяем память
    }
 
  void Vect:: in_val_a(FILE *fin)  
    {
      int i;
       for (i=0; i<dim; i++)  
    {
      fscanf(fin,"%d",&v[i]); //инициализация массива элементами из файла
    }
    }
  int Vect::sum()  // подсчет суммы элементов вектора   {   int i,s=0;   for (i=0; i<dim; i++)  {     s=s+v[i];     }   return s;     } 
  void Vect:: display(FILE *fout)  // вывод вектора в файл       {      int i;      for (i=0; i<dim; i++)   fprintf(fout,"\n member i=%d equal a=%d- ",i,v[i]);
    }
void Vect::show()
    {
     int i;      for (i=0; i<dim; i++)
     cout<<"num"<<i<<"="<<v[i]<<"\n";
    }
 
Шаг 3. Главная программа (файл “vect_main.cpp)
 
#include "vect.сpp" void main()     {     FILE *ff,*fin;     int i,n;     int sx;     ff=fopen("rez.dat","w+");     fin=fopen("init.dat","r");     Vect x(10);    x.in_val_a(fin);    x.display(ff);
 x.show();
            getch();
    sx=x.sum();
    fprintf(ff,"\n sum=%d",sx);
    fin=fopen("int2.dat","r");
    Vect y(10);
      y.in_val_a(fin);
      y.display(ff);
у.show();
         getch();
    sx=y.sum();
    fprintf(ff,"\n sum=%d",sx);
    fclose(ff);
    fclose(fin);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.10.2012, 21:05     Обработка массива
Посмотрите здесь:

C++ обработка массива
Обработка одномерного массива C++
обработка массива на С++ C++
C++ Обработка массива
Обработка массива C++
C++ Обработка массива
C++ Обработка массива
Обработка массива C++

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

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

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