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

Разработайте программу обработки массивов. Входные данные введите с клавиатуры. - C++

Восстановить пароль Регистрация
 
BOTTAK
 Аватар для BOTTAK
0 / 0 / 0
Регистрация: 16.10.2010
Сообщений: 59
09.02.2011, 19:47     Разработайте программу обработки массивов. Входные данные введите с клавиатуры. #1
Здравствуйте уважаемые любители и ценители языка С++! У меня к вам огромная просьба. На днях нужно сдать контрольную работу по предмету Конструирование программ и языки программирования.
Если вам не сложно мне помочь в этом, и у вас будет желание, я вас отблагодарю сильно, сильно.

Разработайте программу обработки массивов. Входные данные введите с клавиатуры. Результаты работы программы отобразите на экране.

Определите, является ли заданная целочисленная квадратная матрица размером N ортонормированной, т. е. такой, в которой скалярное произведение каждой пары различных строк равно 0, а скалярное произведение каждой строки на себя равно 1.

П.С. Заранее огромное спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2011, 19:47     Разработайте программу обработки массивов. Входные данные введите с клавиатуры.
Посмотрите здесь:

C++ [c++]Составить программу обработки одномерных массивов. На основе массивов А(4) и В(4) сформировать третий С(8)
Разработайте программу обработки структур C++
C++ Введите с клавиатуры данные о температуре воздуха за месяц. Определите, сколько раз за месяц была самая низкая температура?
C++ Введите с клавиатуры данные в массив целого типа, выведите их на экран
C++ Разработайте программу, которая преобразует введенное с клавиатуры дробное число в денежный формат
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
09.02.2011, 20:06     Разработайте программу обработки массивов. Входные данные введите с клавиатуры. #2
BOTTAK, Что именно не ясно по заданию ?
BOTTAK
 Аватар для BOTTAK
0 / 0 / 0
Регистрация: 16.10.2010
Сообщений: 59
09.02.2011, 20:32  [ТС]     Разработайте программу обработки массивов. Входные данные введите с клавиатуры. #3
так как болел сильно пневмонией пропустил весь курс лекций, не успеваю все сделать, если не сложно, выложите готовый код, буду благодарен..
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
09.02.2011, 20:35     Разработайте программу обработки массивов. Входные данные введите с клавиатуры. #4
BOTTAK, Я так понимаю сами Вы не хотите думать, тогда - http://www.cyberforum.ru/freelance/
BOTTAK
 Аватар для BOTTAK
0 / 0 / 0
Регистрация: 16.10.2010
Сообщений: 59
09.02.2011, 20:46  [ТС]     Разработайте программу обработки массивов. Входные данные введите с клавиатуры. #5
Спасибо за ссылку, надеюсь кто-то просто так поможет.
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
09.02.2011, 21:06     Разработайте программу обработки массивов. Входные данные введите с клавиатуры. #6
Вроде так, проверяй
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
#include <iostream>
#include <iomanip>
 
template <class T>
T MOD(T a)
{
  return ( (a) < 0? -(a) : (a) );
}
 
void input_matrix(int **matrix, const size_t matrix_size){
  for(int i = 0; i < matrix_size; ++i)
    for(int j = 0; j < matrix_size; ++j){
      std::cout << "\nMtarix[" << i << "][" << j << "] = ";
      std::cin >> matrix[i][j];
    }
}
 
void output_matrix(int **matrix, const size_t matrix_size){
  for(int i = 0; i < matrix_size; ++i){
    for(int j = 0; j < matrix_size; ++j)
      std::cout << std::setw(3) << matrix[i][j] << ' ';
  }
  std::cout << '\n';
}
 
bool cheking(int **matrix, const size_t matrix_size){
  bool ort = true;
  int pr = 0;
  for (int i = 0; i < matrix_size - 1 && ort; ++i){
    pr = 0;
    for (int k = i + 1; k < matrix_size && ort; ++k)
      for(int j = 0; j < matrix_size; ++j)
        pr += matrix[i][j] * matrix[k][j];
    if (MOD(pr) > 0.0001)
      ort = false;
  }
  for (int i = 0; i < matrix_size - 1 && ort; ++i){
    pr = 0;
    for(int j = 0; j < matrix_size; ++j)
      pr += matrix[i][j] * matrix[i][j];
    if (MOD(pr - 1) > 0.0001)
      ort = false;
  }
  return ort;
}
 
int main() {
  size_t matrix_size;
  std::cout << "\n\nInput matrix size -> ";
  std::cin >> matrix_size;
  int **matrix = new int*[matrix_size];
  for(int i = 0; i < matrix_size; ++i)
    matrix[i] = new int[matrix_size];
  input_matrix(matrix, matrix_size);
  std::cout << '\n';
  output_matrix(matrix, matrix_size);
  std::cout << ( cheking(matrix, matrix_size)? "YES" : "NO" ) << std::endl;
  for(int i = 0; i < matrix_size; ++i)
    delete[] matrix[i];
  delete[] matrix;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.02.2011, 21:14     Разработайте программу обработки массивов. Входные данные введите с клавиатуры.
Еще ссылки по теме:

C++ Задача на с++. Сортировка массивов. Входные данные читать из файла!
C++ Сортировка массивов. Входные данные читать из файла
Модернизировать программу, чтобы входные данные были многострочными значениями C++

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

Или воспользуйтесь поиском по форуму:
BOTTAK
 Аватар для BOTTAK
0 / 0 / 0
Регистрация: 16.10.2010
Сообщений: 59
09.02.2011, 21:14  [ТС]     Разработайте программу обработки массивов. Входные данные введите с клавиатуры. #7
Спасибо большое
Yandex
Объявления
09.02.2011, 21:14     Разработайте программу обработки массивов. Входные данные введите с клавиатуры.
Ответ Создать тему
Опции темы

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