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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.11.2013, 01:50   #1
700158
Новичок
Джуниор
 
Регистрация: 20.11.2013
Сообщений: 3
По умолчанию последовательность без массивов

Вычислить указанные в Вашем варианте характеристики последовательности, вводимой с клавиатуры (без использования массивов и промежуточных файлов для хранения всей последовательности), учитывая, что элементы последовательности могут быть введены только один раз.
В программе обязательно применение функций с передаваемыми параметрами.
Подсчитать количество троек соседних чисел, которые можно взять в качестве длин сторон равнобедренного треугольника.
Пример: 1, 8, 10, 3, 4, 4, 7, 20, 21, 21, 54, 45, 15, -18, 0
результат: K=3.
700158 вне форума Ответить с цитированием
Старый 20.11.2013, 05:27   #2
SaLoKiN
Форумчанин
 
Аватар для SaLoKiN
 
Регистрация: 19.09.2013
Сообщений: 597
По умолчанию

Цитата:
1, 8, 10, 3, 4, 4, 7, 20, 21, 21, 54, 45, 15, -18, 0
а может К=4 ?
3 4 4
4 4 7
20 21 21
21 21 54

идеи? придумки? ни ЯП, ни слова о идеях...тупо задача!!! Тут вам форум, а не решебник.
Сделал сам, помоги другому!
Что-то работает не так? Дебаггер в помощь!!!

Последний раз редактировалось SaLoKiN; 20.11.2013 в 05:50.
SaLoKiN вне форума Ответить с цитированием
Старый 20.11.2013, 07:05   #3
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Цитата:
21 21 54
Сумма двух сторон всегда должна быть больше 3-ей стороны.. так что всё таки 3
Poma][a вне форума Ответить с цитированием
Старый 20.11.2013, 07:34   #4
SaLoKiN
Форумчанин
 
Аватар для SaLoKiN
 
Регистрация: 19.09.2013
Сообщений: 597
По умолчанию

Цитата:
так что всё таки 3
упустил,согласен) К=3
Сделал сам, помоги другому!
Что-то работает не так? Дебаггер в помощь!!!
SaLoKiN вне форума Ответить с цитированием
Старый 20.11.2013, 07:54   #5
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
{pascal/delphi}
function TriangleYes(a1,b1,c1:real):boolean;
begin
if (a1<=0) or (b1<=0) or (c1<=0)  then begin TriangleYes:=false;exit;end;
TriangleYes:=(a1+b1>c1) and (a1+c1>b1) and (c1+b1>a1);
end;
Function Isosceles(a1,b1,c1:real):boolean;
begin
Isosceles:=(a1=b1) or (b1=c1) or(c1=a1);
end;
var i,n,k:byte;
a,b,c:real;
begin
readln(n);
readln(a,b,c);
if  TriangleYes(a,b,c) and  Isosceles(a,b,c) then k:=1
else k:=0;
for i:=1 to n-3 do
begin
a:=b;
b:=c;
readln(c);
if  TriangleYes(a,b,c) and  Isosceles(a,b,c) then k:=k+1;
end;
writeln('k=',k);
end.
Цитата:
15
1
8
10
3
4
4
7
20
21
21
54
45
15
-18
0
k=3
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 20.11.2013, 15:44   #6
700158
Новичок
Джуниор
 
Регистрация: 20.11.2013
Сообщений: 3
По умолчанию

мой код, не могу разобраться в чем проблема
Код:
СИ
#include <stdio.h>
#include <math.h>
#include <locale.h>

bool troiki(int x, int y, int z);

int main()
{
setlocale(LC_ALL, "Russian");
int i, a, n, kol=0, num1, num2, num3;
printf("Введите размер последовательности \n");
scanf("%d", &n);
for(i=0; i<n; i++){
printf("Введите число: \n");
scanf("%d", &a);
	while(a!=0)
	{
		switch(i)
		{
		case 0:
			num1=a;break;
		case 1:
			num2=a;break;
		case 2:
			num3=a;break;
		default:
			num1=num2;
			num2=num3;
			num3=a;break;
		}
	}
	if (i>=2)
		if(troiki(num1,num2,num3)) kol++;
	else continue;
}
if (kol>0) printf("Количество элементов  %d \n" , kol);
else printf("Ни одно из числел не подходит условию \n");
return 0;
}

bool troiki(int x, int y, int z){
	if ((x==y && x+y<z) || (x==z && x+z<y) || (y==z && z+y<x)) 
			return true;
	else
		return false;
}
700158 вне форума Ответить с цитированием
Старый 20.11.2013, 15:47   #7
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
x+y<z
знак имхо в другую сторону надо бы
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 20.11.2013, 16:00   #8
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,543
По умолчанию

Цитата:
while(a!=0)
зачем???

scanf( &a);
while (a!=0)
{ и внутри цикла никаких изменений a } =>бесконечный цикл =>повисшая программа
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 20.11.2013, 16:45   #9
700158
Новичок
Джуниор
 
Регистрация: 20.11.2013
Сообщений: 3
По умолчанию

спасибо evg_m заменил на if

все работает

Последний раз редактировалось Stilet; 21.11.2013 в 12:31.
700158 вне форума Ответить с цитированием
Старый 21.11.2013, 05:15   #10
SaLoKiN
Форумчанин
 
Аватар для SaLoKiN
 
Регистрация: 19.09.2013
Сообщений: 597
По умолчанию

а разве длина стороны может иметь отрицательное значение?
Сделал сам, помоги другому!
Что-то работает не так? Дебаггер в помощь!!!
SaLoKiN вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++ палиндромы без массивов, без строк Anya She Помощь студентам 7 20.12.2012 22:57
Определение палиндрома без массивов Negent Общие вопросы C/C++ 7 09.12.2011 17:46
Работа с действительными числами без массивов foxy342 Помощь студентам 1 16.12.2010 11:17
без массива последовательность [Паскаль] syrga Помощь студентам 2 05.12.2010 16:06
утверждение Ферма без массивов [Паскаль] syrga Помощь студентам 1 05.12.2010 13:54