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

22.10.2009, 20:19
|
|
Познающий
Регистрация: 20.01.2008
Сообщений: 65
Провел на форуме: 664107
Репутация:
25
|
|
Код:
#include<string>
#include<iostream>
#include<fstream>
#include<cstdlib>
#define SYMBOLS 0
#define WORDS 1
#define STRINGS 2
#define NSTRING 3
#define NWORD 4
#define OVERLEN 5
using namespace std;
int main(int argc, char **argv){
int i, j, cc;
char buf[1001];
long count[6]={
-1, // count[ SYMBOLS ] - кол-во символов в файле
0, // count[ WORDS ] - кол-во слов
0, // count[ STRINGS ] - кол-во строк
0, // count[ NSTRING ] - номер строки в кот-ой самое длинное слово
0, // count[ NWORD ] - номер слова кот-е явл-ся самым длинным
0 //count[ OVERLEN ] - длина самого длинного слова
};
fstream f;
f.open(argv[1], ios::in | ios::out);
if( !f ){
cout<<"Cannot open file : "<<argv[1]<<endl;
exit(1);
}
f.seekp( 0, ios::beg);
while(!f.eof()){
f.getline(buf,1000);
puts(buf);
if(strlen(buf) >0 ) ++count[STRINGS]; // строки
else continue;
for(i=0, j=0; i<= strlen(buf); ++i, ++j ){
if(buf[i]==' ' || buf[i]=='\t'|| buf[i]=='\n' || buf[i]=='\0' ){
for( ; i<=strlen(buf) && (buf[i] ==' ' || buf[i]=='\t'); ++i );
if(i>0){
++count[WORDS]; // слова
}
if(j>count[OVERLEN]){
count[NWORD] = count[WORDS];
count[NSTRING] = count[STRINGS];
count[OVERLEN] = j;
}
j=0;
}
}
count[SYMBOLS] +=i;
}
cout<<"SYMBOLS: "<<count[SYMBOLS]<<endl;
cout<<"WORDS: "<<count[WORDS]<<endl;
cout<<"STRINGS: "<<count[STRINGS]<<endl;
return 0;
}
|
|
|

24.10.2009, 02:38
|
|
Познающий
Регистрация: 03.12.2008
Сообщений: 56
Провел на форуме: 140714
Репутация:
29
|
|
Всем доброго времени суток.
В качестве лабораторной задали написать программу, которая осуществляет действия шифровальной машины Энигма. С отличиями в том, что в качестве алфавита используются не 26 букв латиницы, а 64 символа: 33 русских буквы плюс дополнительно введенные символы. Я написал шифрование и расшифровку.
Проблема в том, что еще нужно осуществить дешифровку сообщений. Правда есть несколько оговорок: не используется "коммутационная панель" (т.е. шифруемые символы сразу попадают в первую роторную "подстановку"), известно количество роторов (подстановок) - их три штуки, и заранее известен отражатель (Reflector). Неизвестными остаются сами роторы и их начальные положения. В связи с этим вопрос. Есть ли способ осуществить дешифровку сообщений не перебирая все возможные ключи и варианты роторов (читай подстановок)? Как уменьшить количество вариантов для перебора? Просто с моим алфавитом получается (64! * 64)^3 ~ примерно 5,355 *10^272
Последний раз редактировалось StealthMaster; 24.10.2009 в 02:40..
|
|
|

25.10.2009, 15:12
|
|
Новичок
Регистрация: 18.10.2009
Сообщений: 1
Провел на форуме: 2075
Репутация:
0
|
|
Помогите написать программу на С++ с помощью рекурсии:
Задано двумерное поле, содержащее черные фигуры на белом фоне. Перекрасить в красный цвет фигуру, содержащую выбранную пользователем точку. Допускается заменить цветовое представление кодовым.
Заранее спасибо .
|
|
|

25.10.2009, 16:44
|
|
Познающий
Регистрация: 16.07.2008
Сообщений: 82
Провел на форуме: 424387
Репутация:
142
|
|
Сообщение от Martyr
Господа!Буду очень благодарен за любую предоставленную помощь в решении вот этой задачи:
№3.Дано предложение,в конце которого стоит точка.Слова отделены друг от друга одним или несколькими пробелами.Найти максимальную длину слов в данном предложении.
Язык программирования желательно С++ либо Pascal
Код:
#include<stdio.h>
#include<string.h>
int main( int argc , char *argv[] )
{
char str[] = "Very very simple example.";
char *pch = NULL;
int max = 0;
pch = strtok( str , " ." );
while( pch != NULL )
{
printf("%s\n" , pch );
if( max < strlen( pch ) ) max = strlen( pch );
pch = strtok( NULL , " .");
}
printf("max len is : %d\n" , max );
return 0;
}
|
|
|

25.10.2009, 20:00
|
|
Новичок
Регистрация: 11.11.2008
Сообщений: 7
Провел на форуме: 16970
Репутация:
0
|
|
Помогите пожалуйста!Очень срочно нужно.Буду очень благодарен откликнувшимся.
Задание:
Розработать матиматическую постановку задачи и сложить программы на языках Паскаль и Си для перещета координат точки с полярной системы в декартовую.
|
|
|

25.10.2009, 20:30
|
|
Новичок
Регистрация: 11.11.2008
Сообщений: 7
Провел на форуме: 16970
Репутация:
0
|
|
Сообщение от Nikituki
Так должно работать
Код:
uses crt;
var
a,x,z:real;
begin
clrscr;
writeln('x=');
readln(x);
write('z=');
readln(z);
a:=(3+exp(y)-1)/(1+sqr(x)*abs(y-sin(z)/cos(z)));
end.
Почему пишет Error 3: Unknown identifier?
|
|
|

25.10.2009, 22:26
|
|
Познающий
Регистрация: 10.02.2009
Сообщений: 40
Провел на форуме: 59352
Репутация:
0
|
|
помогите исправить ошибки в задачке на pascale
program chast;
var s:real;
n:integer;
sign:integer;
factor:integer;
i:integer;
begin
write('Ukazhite kol-vo elementov rada n=');
readln(n);
s:=0;
factor:=1;
for i:=1 to n do
begin
if i mod 2 = 0 then
sign:=-1
else
sign:=1;
factor:=factor*i;
s:=s+sign*((i+1)*exp(i*ln(x)))/factor;
writeln('s=',s);
end;
readln;
end.
|
|
|

26.10.2009, 00:05
|
|
Новичок
Регистрация: 25.10.2009
Сообщений: 6
Провел на форуме: 14454
Репутация:
0
|
|
Помогите с заданием на делфи.
=================
Создать модуль из функций и процедур для благоустройства:
1 одномерного массива за ростом.
2 одномерного массива за спадением.
3 Двумерного массива за ростом (по строкам).
4 Двумерного массиваза ростом (по столбикам)
5 двумерного масива за спадением ( по строкам).
6 двумерного масива за спадением (по столбикам).
|
|
|

26.10.2009, 01:27
|
|
Новичок
Регистрация: 25.10.2009
Сообщений: 6
Провел на форуме: 14454
Репутация:
0
|
|
прога нужна срочно.. Помогите плз....
|
|
|

26.10.2009, 01:48
|
|
Познающий
Регистрация: 10.02.2009
Сообщений: 40
Провел на форуме: 59352
Репутация:
0
|
|
помогите найти ошибки
program variant1;
uses crt;
var a,y,x:real;
b:=Pi;
c:=2*Pi;
z:=Pi/4;
y:=b;
while y < = c do
begin
x:=1-2*cos(a*y)+ln(y);
a:=ln(y)/ln(2);
writeln(y,x,a);
y:=y+z;
end;
readln;
end.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|