ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

09.05.2008, 20:46
|
|
Участник форума
Регистрация: 31.10.2007
Сообщений: 213
Провел на форуме: 394522
Репутация:
14
|
|
Нужно организовать имитатор калькулятора для операндов любого типа !!!
Я накидал некий код :
Код:
#include <stdio.h>
#include <conio.h>
void main()
{
clrscr();
float a=0,b=0,res=0;
char o;
int ok;
printf("Input Operation");
scanf("%lf%c%lf",&a,&o,&b);
ok = 1;
switch(o){
case '+' : res = a+b;break;
case '-' : res = a-b;break;
case '*' : res = a*b;break;
case '/' : if (b=0) ok = 2;
else {
res = a/b;break;
}
default : ok = 0;
}
if (ok == 1){
printf("%.2f%c%.2f=%.2f",a,o,b,res);
}
else{
if (ok == 0)printf("Unknow Operation %c",o);
else{
puts("Divizion By Zero");
}
}
getch();
}
но нужно штобы он работал для любого типа (int , float ,unsigned) через шаблоны классов типа templete <class Type> !!! Ветом разобраться немогу!!! Кто знает как ето организовать поделитесь кодом , с меня + ;
|
|
|

09.05.2008, 23:31
|
|
Познающий
Регистрация: 04.02.2007
Сообщений: 31
Провел на форуме: 126186
Репутация:
5
|
|
Дано:
Корень из 2 + под корнем еще прибовляется корень из 2 + сного корень из 2х приболяется и так n раз задающаяся переменной пользователя... буду оч. благодарен если будет решение, сам я ее не могу доконца решить...
√(2+√(2+√(2+√(2+...+√(2+√2) ) ) ) )
|
|
|

09.05.2008, 23:38
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме: 4037638
Репутация:
1821
|
|
Будь добр отредактируй свое сообщение и уточни язык программирования на котором надо реализовать...
+ Эта последовательность точно не определена?
|
|
|

10.05.2008, 00:24
|
|
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме: 2187381
Репутация:
518
|
|
2 TheSoul
примерно так строка str
Код:
for(int i=0;*(str+i)!=0;i++)
{
for(int j=1;*(str+i+j)!=0 && *(str+i)+j==*(str+i+j);j++) ;
if(j>1)
{
strcpy(str+i,str+i+j);
}
}
|
|
|

10.05.2008, 10:35
|
|
Новичок
Регистрация: 14.03.2008
Сообщений: 28
Провел на форуме: 39192
Репутация:
2
|
|
опять контрольная ><
помогите плиз  (Паскаль)
Текстовый файл содержит информацию о номерах гостиницы: номер, категория, количество мест, количество проживающих, наличие телевизора, стоимость за место.
Например:
456, эконом, 2, 1, есть, 500 руб.
Считать этот файл и переписать в типизированный файл, записав данные в соответствующие поля.
Получить следующие сведения:
А) свободные номера люкс.
Б) самые дорогие номера (номера, которые приносят самую большую выручку и при этом, количество мест не превышает 2).
В) найти номера, в которых есть свободные места, и имеется телевизор.
Выполнить задание без использования массива.
|
|
|

10.05.2008, 17:49
|
|
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме: 2187381
Репутация:
518
|
|
2 Системник!!! (CbIcTeMn1k)
Task:√(2+√(2+√(2+√(2+...+√(2+√2) ) ) ) )
Код:
double decide(int curn,int N)
{
double rez;
if(curn<N)
{
rez=sqrt(2+decide(curn+1,N));
}
else
rez=sqrt(2));
return rez;
}
/*
вызов .... */
decide(0,n);
Последний раз редактировалось Delimiter; 10.05.2008 в 17:54..
|
|
|

10.05.2008, 18:41
|
|
Познающий
Регистрация: 22.02.2008
Сообщений: 62
Провел на форуме: 211076
Репутация:
52
|
|
CbIcTeMn1k
А это если на паскале:
Код:
program qwer;
var
q:real;
i,n:integer;
begin
write('Введите n');
read(n);
q:=sqrt(2);
for i:=1 to n-1 do
q:=sqrt(q+2);
write('Ответ: ');
write(q:2:10);
readln;
end.
|
|
|

11.05.2008, 15:52
|
|
Познающий
Регистрация: 04.02.2007
Сообщений: 31
Провел на форуме: 126186
Репутация:
5
|
|
Delimiter, Myst Спасибо вам, оч благодарен...
|
|
|

11.05.2008, 17:23
|
|
Познающий
Регистрация: 15.12.2007
Сообщений: 37
Провел на форуме: 62499
Репутация:
15
|
|
Помогите с решением. Можете, пожалуйста, не писать код, а только разяснить алогоритм,а то так ничему не научусь.
Код:
Имеются N человек, и матрица A(N;N)
Для А справедливо A[i;j]=1, если i и j знают друг друга.
Можно ли разбить всех людей на 2 группы, так, чтоб в каждой группе были только незнакомые люди? Если да, то как.
|
|
|

11.05.2008, 17:32
|
|
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме: 2187381
Репутация:
518
|
|
если по условию это можно сделать, разбить всех людей на 2 группы
то проще простого
сортируешь матрицу так что в верхней строчке оказались те у кого больше всех знакомых
берешь 1-го и выбираешь всех с кем он не знаком(ПРОВЕРЯЕШЬ ЧТО НЕ ЗНАКОМЫЕ НЕ ЗНАКОМЫ ДРУХ С ДРУХОМ), это и будет первая группа, а остальные вторая, естественно проверка должна дать, что это действительно так!
В итоге если нельзя так сделать то ответ должен быть "Разбить на 2 группы нельзя"
представь себе человека который знаком сразу с 2-мя человеками, и сразу станет все на место! Куда ты его поместишь и что делать с его знакомыми?
Последний раз редактировалось Delimiter; 11.05.2008 в 17:47..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|