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

20.05.2009, 19:50
|
|
Участник форума
Регистрация: 04.05.2007
Сообщений: 267
Провел на форуме: 409147
Репутация:
33
|
|
ну да. помогите, номерок АСИКЬЮ ещё в силе.
|
|
|

20.05.2009, 23:44
|
|
Постоянный
Регистрация: 20.03.2009
Сообщений: 564
Провел на форуме: 991929
Репутация:
395
|
|
а моя прога че не устраивает? яж те новую версию вроде отправлял
|
|
|

21.05.2009, 16:44
|
|
Участник форума
Регистрация: 04.05.2007
Сообщений: 267
Провел на форуме: 409147
Репутация:
33
|
|
Сообщение от Gar|k
а моя прога че не устраивает? яж те новую версию вроде отправлял
неееее мне так, чтоб работало и небыло заморочек , и чтоб работало, повторюсь)) проверь плиз именно в той 3.1. ОООЧ надо.
|
|
|

21.05.2009, 19:55
|
|
Постоянный
Регистрация: 20.03.2009
Сообщений: 564
Провел на форуме: 991929
Репутация:
395
|
|
поставь патч прямые руки 1.0.2
|
|
|

21.05.2009, 20:12
|
|
Участник форума
Регистрация: 26.11.2008
Сообщений: 158
Провел на форуме: 2816163
Репутация:
158
|
|
Спешиал фор ю!) BC 3.1
написано кривовато конешно, но работает...
входные данные

результат

сорец:
PHP код:
#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void print_wrd(char *); //прототип ф-ии, преобраз цифру в слова
void main()
{
clrscr();
FILE *fPtr;
char *str[20],*wrd[30];
int i=0,j=0;
//открываем файл на чтение
if((fPtr=fopen("inpt.txt", "rt"))==NULL){
printf("File could not be open =(\n");
getch();
return;
}
else{
//в цикле считываем строки из файла в массив str. кста макс строка может быть 50 байт
fgets(str[i],50,fPtr);
while(!feof(fPtr)){
i++;
fgets(str[i],50,fPtr);
}
fclose(fPtr);
}
//разбиваем каждую строку на слова при помощи strtok
for(int k=0; k<=i; k++){
wrd[j]=strtok(str[k]," ");
while(wrd[j]!=NULL){
//передаем слово(цифру) ф-ии print_wrd которая уже и преобразует 123 в АдЫн Два Три
print_wrd(wrd[j]);
j++;
wrd[j]=strtok(NULL," ");
}
}
getch();
}
void print_wrd(char *wrd)
{
char *cfr[]={"HOJIb","oDbIH","DBa","Tpu","4eTbIpu","n9Tb", "6ecTb","CeMb","BoceMb","DeB9Tb"};
int n,i,c;
n=strlen(wrd);
//в цикле печатаем цифры из слова wrd
for(i=0; i<n; i++){
c=wrd[i]-48;//типа превращяем символ в цофру
//проверка является-ли с цифрой, если является то выбираем ее из cfr
if(c>=0&&c<=9){
printf("%s ",cfr[c]);
}
}
printf("\n");
}
Все вместе в архиве
|
|
|

21.05.2009, 20:19
|
|
Участник форума
Регистрация: 04.05.2007
Сообщений: 267
Провел на форуме: 409147
Репутация:
33
|
|
fker он из примера:
"Privet 1.
Privet 2. 3"
ВЫвел только:
"
ODblN
DVA
Tpu"
А надо
"Privet Odin.
Privet Dva.
Tpu"
Т.е. 1)каждое предложение с новой строки 2)чтобы всё выводилось на экран , не внимательно читал, а так, пашет клёва..... доработай и я тебе тогда отдам аську, заслужил
|
|
|

21.05.2009, 20:27
|
|
Участник форума
Регистрация: 26.11.2008
Сообщений: 158
Провел на форуме: 2816163
Репутация:
158
|
|
Нао было сразу выкладывать примеры входных данных и результат обработки =\
Тогда получаццо еще проще, но время нет делать\\ если тока завтро
|
|
|

21.05.2009, 20:47
|
|
Постоянный
Регистрация: 20.03.2009
Сообщений: 564
Провел на форуме: 991929
Репутация:
395
|
|
2 fker ихмо я круче
Код:
#include "stdlib.h"
#include "stdio.h"
#include "malloc.h"
int main(int argc, char * argv[]) {
FILE * f;
size_t buflen = 0,
result = 0,
si = 0;
unsigned char * buffer,
ch;
char num[10][10] = {
"nol",
"odin",
"dva",
"tri",
"chet",
"pat",
"shest",
"sem",
"vos",
"dev"
};
f = fopen("test.txt", "rb");
if (f == NULL) {
printf("Error open!");
return 1;
}
fseek(f, 0, SEEK_END);
buflen = ftell(f);
rewind(f);
buffer = (unsigned char * ) malloc(buflen);
if (buffer == NULL) {
printf("Memory error\n");
return 2;
}
result = fread(buffer, 1, buflen, f);
if (result != buflen) {
printf("Reading error\n");
return 3;
}
while (si < buflen) {
if (buffer[si] == '.') {
putc(buffer[si], stdout);
putc(0x0A, stdout);
}
else {
ch = buffer[si] - 0x30;
if (ch >= 0 && ch <= 9) {
printf("%s", num[ch]);
}
else {
putc(buffer[si], stdout);
}
}
si++;
}
free(buffer);
fclose(f);
getchar();
return 0;
}
Последний раз редактировалось Gar|k; 21.05.2009 в 20:50..
|
|
|

21.05.2009, 20:54
|
|
Участник форума
Регистрация: 04.05.2007
Сообщений: 267
Провел на форуме: 409147
Репутация:
33
|
|
жесть... чем он лучше?? у него код проще, можешь его код доделать? у тебя слишком замороченный))) "1)каждое предложение с новой строки 2)чтобы всё выводилось на экран" и всё.
|
|
|

21.05.2009, 21:20
|
|
Участник форума
Регистрация: 26.11.2008
Сообщений: 158
Провел на форуме: 2816163
Репутация:
158
|
|
пиу
PHP код:
#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define fname "inpt.txt"
void print_wrd(char *);
void main()
{
clrscr();
char *cfr[]={"HOJIb","oDbIH","DBa","Tpu","4eTbIpu","n9Tb", "6ecTb","CeMb","BoceMb","DeB9Tb"};
FILE *fPtr;
char *str[20],*wrd[30];
int i=0,j=0,n,c;
if((fPtr=fopen(fname, "rt"))==NULL){
printf("File could not be open =(\n");
getch();
return;
}
else{
fgets(str[i],50,fPtr);
//printf("%s",str[i]);
while(!feof(fPtr)){
i++;
fgets(str[i],50,fPtr);
//printf("%s",str[i]);
}
fclose(fPtr);
}
for(int k=0; k<=i; k++){
n=strlen(str[k]);
for(j=0; j<=n; j++){
c=str[k][j];
if(c>='0'&&c<='9')
printf(" %s",cfr[c-48]);
else
printf("%c",c);
}
printf("\n");
}
getch();
}
блё, как ху*ва жить без инета=((
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|