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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.03.2007, 23:28   #1
Настенька
 
Регистрация: 15.03.2007
Сообщений: 4
Плохо Помогите исправить ошибки ...С++

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

вот текст задач...
1. Записать в файл N произвольных натуральных чисел. Переписать в другой файл последовательного доступа те элементы, которые кратны K. Вывести полученный файл на печать.
2. Дан файл Т, который содержит номера телефонов сотрудников учреждения: указывается фамилия, инициалы и номер телефона. Найти номер телефона сотрудника по его фамилии и инициалам.
3. Дан файл, содержащий текст на русском языке. Определить, сколько раз встречается в нем самое длинное слово.

вот то как я решала их по отдельности...

1:

#include<conio.h>
#include<iomanip.h>
#include<fstream.h>
#include<stdlib.h>
div_t x;
void main()
{
int i, j, N=0, K=0;
char miss[ ][ 20 ]={
" Kolichestvo chisel ",
" Delitel' "
};
fstream f, fD;
f.open( "data.txt", ios:ut );
fD.open( "dummy.txt", ios:ut );
if( !f || !fD )
{
cout << "Oshibka otkritia faila : " << "data.txt или dummy.txt" << endl;
exit( 1 );
}
f.seekp( 0, ios::beg );
for( i=0; N==0 || K==0; )
{
clrscr();
cout << "Vvedite dannie (" << miss[ i ] << "): ";
if( i==0 )
{
if( (cin >> N)>0 ) ++i;
}
else
cin >> K;
}
fD << " Chislo | Delitel' | Chastnoe | Ostatok " << endl
<< "-------------------------------------------" << endl;
for( i=1; i<=N; ++i )
{
f << setw( 3 ) << i;
x=div( i, K );
if( x.rem==0 )
fD << setw( 8 ) << i << " |" << setw( 8 ) << K << " |"
<< setw( 8 ) << x.quot << " |" << setw( 8 ) << x.rem << endl;
}
f.close();
fD.close();
return;
}



2:

#include<conio.h>
#include<fstream.h>
#include<string.h>
#include<stdlib.h>

void main()
{
int i, j;
char Lname[ 100 ], Phone[ 20 ], opt[ 100 ];
fstream T;
T.open( "info.txt", ios::in );
clrscr;
if( !T )
{
cout << "Oshibka otkritia faila : " << "info.txt" << endl;
getch();
exit( 1 );
}
cout <<endl<< "Vvedite familiy i iniciali :"<<endl;
cin.get( opt, 100 );
T.seekp( 0, ios::beg );
for( ; !T.eof(); )
{
T >> Lname >> Phone;
if( stricmp( Lname, opt )==0 )
{
cout << Phone;
break;
}
else
memset( Lname, NULL, strlen(Lname) );
}
if( strlen(Lname)==0 ) cout << "Etogo cheloveka v spiske net : " << opt;
getch();
T.close();
return;
}


3:

#include<conio.h>
#include<fstream.h>
#include<iomanip.h>
#include<string.h>
#include<stdlib.h>

void main()
{
int i, j, c, numstr=0, over=0;
char buf[ 100 ];
fstream f;
f.open( "long.txt", ios::in );
if( !f )
{
cout << "Ohibka otkritia faila : " << "long.txt" << endl;
getch();
exit( 1 );
}
f.seekp( 0, ios::beg );
for( ; !f.eof(); )
{
f.getline( buf, 100 );
if( strlen(buf) >0 ) ++numstr; // stroki
else continue;
for( i=0, j=0; i<=strlen(buf); ++i, ++j )
{
if (buf[ i ]=='\n' || buf[ i ]=='\0');
{
for( ; i<=strlen(buf) && (buf[ i ] ==' ' || buf[ i ]=='\t'); ++i );
if( j>over )
over=j; // dlina samogo dlinnogo slova
j=0;
}
}
}
f.clear();
f.seekp( 0, ios::beg );
for( c=0; !f.eof(); )
{
f.getline( buf, 100 );
if( strlen(buf)==over ) ++c;
}
cout << "Samoe dlinnoe slovo vstrechaetsa v faile " << c << " raz!" << endl;
getch();
f.close();
return;
}
Настенька вне форума Ответить с цитированием
Старый 25.03.2007, 23:30   #2
Настенька
 
Регистрация: 15.03.2007
Сообщений: 4
По умолчанию

а вот то как я объединила...

#include<fstream.h>
#include<iomanip.h>
#include<string.h>
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
div_t x;
void zadacha_1(int N, int K)
{
int i, j;
fstream f, fD;
f.open( "data.txt", ios:: 0ut );
fD.open( "dummy.txt", ios:: 0ut );
f.seekp( 0, ios::beg );
fD << " Chislo | Delitel' | Chastnoe | Ostatok " << endl
<< "--------------------------------------------------------" << endl;
for( i=1; i<=N; ++i )
{
f << setw( 3 ) << i;
x=div( i, K );
if( x.rem==0 )
fD << setw( 8 ) << i << " |" << setw( 8 ) << K << " |"
<< setw( 8 ) << x.quot << " |" << setw( 8 ) << x.rem << endl;
}
}
void zadacha_2(char opt[ 100 ])
{
fstream T;
char Lname[ 100 ], Phone[ 20 ];
T.seekp( 0, ios::beg );
for( ; !T.eof(); )
{
T >> Lname >> Phone;
if( stricmp( Lname, opt )==0 )
{
cout << Phone;
break;
}
else
memset( Lname, NULL, strlen(Lname) );
}
if( strlen(Lname)==0 ) cout << "Etogo cheloveka v spiske net : " << opt;
return;
}
int zadacha_3( )
{
int i, j, c, numstr=0, over=0;
char buf[ 100 ];
fstream f;
f.open( "long.txt", ios::in );
if( !f )
{
cout << "Ohibka otkritia faila : " << "long.txt" << endl;
getch( );
exit( 1 );
}
f.seekp( 0, ios::beg );
for( ; !f.eof( ); )
{
f.getline( buf, 100 );
if( strlen(buf) >0 ) ++numstr; // stroki
else continue;
for( i=0, j=0; i<=strlen(buf); ++i, ++j )
{
if( buf[ i ]=='\n' || buf[ i ]=='\0' )
{
for( ; i<=strlen(buf) && (buf[ i ] ==' ' || buf[ i ]=='\t'); ++i );
if( j>over )
over=j; // dlina samogo dlinnogo slova
j=0;
}
}
}
f.clear();
f.seekp( 0, ios::beg );
for( c=0; !f.eof(); )
{
f.getline( buf, 100 );
if( strlen(buf)==over ) ++c;
}
return c;
}
void main()
{
clrscr();
int k;
cout<<"‚ўҐ¤ЁвҐ ­®¬Ґа ўлЇ®«­пҐ¬®© Їа®Ја ¬¬л ";
cin>>k;
switch (k)
{
case 1:
{
int i, j, N=0, K=0;
char miss[ ][ 20 ]={" Kolichestvo chisel ", " Delitel' "};
fstream f, fD;
f.open( "data.txt", ios:: 0ut );
fD.open( "dummy.txt", ios:: 0ut );
if( !f || !fD )
{
cout << "Oshibka otkritia faila : " << "data.txt или dummy.txt" << endl;
exit( 1 );
}
f.seekp( 0, ios::beg );
for( i=0; N==0 || K==0; )
{
clrscr();
cout << "Vvedite dannie (" << miss[ i ] << "): ";
if( i==0 )
{
if( (cin >> N)>0 ) ++i;
}
else
cin >> K;
}
zadacha_1(N, K);
f.close();
fD.close();
break;
}
case 2:
{
int i, j;
char Lname[ 100 ], Phone[ 20 ], opt[ 100 ];
fstream T;
T.open( "info.txt", ios::in );
if( !T )
{
cout << "Oshibka otkritia faila : " << "info.txt" << endl;
getch();
exit( 1 );
}
cout << "Vvedite familiy i iniciali :";
cin.get( opt, 100 );
zadacha_2(opt);
T.close();
break;
}
case 3:
{
int i, j, c;
char buf[ 100 ];
fstream f;
f.open( "long.txt", ios::in );
if( !f )
{
cout << "Ohibka otkritia faila : " << "long.txt" << endl;
getch( );
exit( 1 );
}
cout << "Samoe dlinnoe slovo vstrechaetsa v faile " << zadacha_3() << " raz!" << endl;
f.close();
break;
}
default: (cout<<"ЌҐ¤®ЇгбвЁ¬л© ­®¬Ґа ");
};
getchar();
return;
}

помогите плз...
Настенька вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите исправить ошибки kermit Помощь студентам 1 21.06.2008 10:44
Помогите исправить незначительные ошибки HAMMAN Помощь студентам 1 10.06.2008 19:07
помогите исправить ошибки в программе... VDK23 Помощь студентам 1 17.04.2008 13:05
Помогите исправить ошибки в программе Gambit90 Помощь студентам 1 20.12.2007 16:24