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

Определить количество серий, состоящих из квадратов натуральных чисел - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ 2 мини задачки на массивы http://www.cyberforum.ru/cpp-beginners/thread521200.html
1)Проверить, есть ли в массиве ДВА ПОДРЯД идущих одинаковых элемента. 2)Проверить, содержатся ли в массиве ДВА ПОДРЯД идущих отрицательных элемента. (Проверку состояния массива оформить в виде логической функции)
C++ Не работает Hello World Добрый день! Я являюсь начинающим программистом C++ На данный момент ознакамливаюсь с первыми видеоуроками и сруз же столкнулся с проблемой. #include <iostrem> using namespace std; void main () http://www.cyberforum.ru/cpp-beginners/thread521194.html
C++ добавить расширение к имени файла
т.е. чтобы постоянно не писать его в программе... void vvod(char name) { char dat=".dat"; fstream FileOutput; system("cls"); FileOutput.open(name, ios::out|ios::binary); strcpy(name, dat);
C++ Подскажите. как сделать exe файл?
Написана программа с помощью builder, нужно из этих файлов сделать exe файл с программой. как?
C++ Исходник бинаризации изображения. Разбор кода http://www.cyberforum.ru/cpp-beginners/thread521176.html
Здравствуйте. Нашел на CodeProject отличный исходник бинаризации изображения. Он оказался написан на C#, а мне нужен С++. Переписать алгоритмы - не представляет никакой трудности. Но этот исходник сделан с добавлением формы и соответственно кучи функций, применимых к этой форме, которых я вообще не знаю. Не могли бы Вы, пожалуйста, прочитать код и выписать хотя бы небольшие комментарии для...
C++ Найти минимальное число среди образовавшегося промежутка чисел #include <iostream> using namespace std; #define n 5 void main(void) { int a; int i,minim; for ( i=0; i<n; i++) подробнее

Показать сообщение отдельно
Kidasov
76 / 76 / 12
Регистрация: 02.12.2011
Сообщений: 966
Записей в блоге: 3
18.03.2012, 02:04     Определить количество серий, состоящих из квадратов натуральных чисел
Серия == последовательность, как говорилось выше.

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
#include <iostream>
#include <cmath>
using namespace std;
 
//Ввод массива с клавиатуры
void input(double *a, int length) {
  cout<<"Input data"<<endl;
  for (int i = 0; i < length; i++) {
    cin>>a[i];
  }
}
 
//Вывод массивы с клавиатуры
void output(double *a, int length) {
  cout<<"Output data"<<endl;
  for (int i = 0; i < length; i++) {
    cout<<a[i]<<" ";
  }
}
 
//Находим количество серий в массиве. За серию примем последовательные идущие квадраты натуральных чисел
//Например int a[10] = { 1, 4, 16, 3, 64, 196, 2, 0, 1, 64 };  Серия 1 = { 1, 4, 16 }; Серия2 = { 64, 196 }; Серия3 = { 1, 64 }
void findSeria(double *a, int length) {
  int maxSeria = 0;
  int begin = 0, end = 0;
  int buf;
  cout<<endl;
  for (int i = 0; i < length; i++) {
    buf = static_cast<int>(sqrt(a[i])); 
    if (buf * buf == a[i] && a[i] != 0) {
      cout<<a[i]<<" ";
      begin = 0;
      end += 1;
    }
    else if (end - begin > 1) { maxSeria += 1; end = 0; cout<<endl; }
  }
  if (end - begin > 1) maxSeria += 1;
  cout<<"MaxSeria = "<<maxSeria<<endl;
}
 
int main() {
  const int LENGTH = 10;
  double a[LENGTH];
  input(a, LENGTH);
  output(a, LENGTH);
  findSeria(a, LENGTH);
  return 0;
}
 
Текущее время: 07:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru