IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Полный квадрат
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 19
Пол: Мужской

Репутация: -  0  +


Помогите пожалуйста сделать чтобы программа искала наибольшую из длин полных квадратов. Моя ищет только наибольшую из длин одинаковых чисел.

#include <conio.h>
#include <iostream.h>
const n = 10;
int k, m, kmax, kindex;
void main()
{
int mas[n]={9,25,25,10,10, 10, 10, 5, 5, 5};
clrscr();
k=0;
m=mas[0];
kmax = 0;
kindex = 0;
for (int i=0; i<n; i++)
{
if (mas[i]==m)
{
k++;
}
else
{
if (k > kmax)
{
kmax = k;
kindex = i-kmax;
}
k = 0;
m = mas[i];
i--;
}
}
cout<<"\n posledovatelnost odinakovix chisel "<<kmax<<"\n\n";
for (i = kindex; i < kindex+kmax; i++)
cout << mas[i]<<" ";
getch();
}

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






ctx, как вариант:

#include <iostream>
#include <math.h>

int main() {
const int n = 10;
int mas[n] = { 9, 25, 25, 10, 16, 16, 9, 25, 25, 5 };

int Len = 0, i = 0, start;
while(i < n) {
int count = 0, delta = 1;
while(((int)sqrt(mas[i]) * (int)sqrt(mas[i])) == mas[i]) {
count += 1; i += 1; delta = 0;
}

if(Len < count) {
start = i - count; Len = count;
}
i += delta;
}
cout << "start = " << start << " len = " << Len << endl;
return 0;
}
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 28.04.2024 13:27
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name