|
|
|
нужна ваша помощь
|
|||
|---|---|---|---|
|
#18+
нужно решить 2 задачи. 1. Создать два текстовых файла, все числа, содержащиеся в обоих файлах од-новременно, удалить из первого файла. Дополнительных массивов и файлов не использовать. 2. Разработать программу перевода числа (например, 124,341) из десятичной системы счисления в систему счисления с основанием меньше либо равно 20. заранее спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2006, 16:04 |
|
||
|
нужна ваша помощь
|
|||
|---|---|---|---|
|
#18+
Для начала представьте ваши варианты (пусть даже неработающие - поправим) или огласите ваши материальные возможности в плане оплаты решения этого задания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2006, 19:19 |
|
||
|
нужна ваша помощь
|
|||
|---|---|---|---|
|
#18+
действительно. что именно у вас не получается. делать бесплатно за вас никто не будет, только укажут ошибку. аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2006, 12:08 |
|
||
|
нужна ваша помощь
|
|||
|---|---|---|---|
|
#18+
в первой задаче я не знаю как перевести десятичную часть в 16 ричную систему счисления. я знаю системы счисления от 2ной до 10 и 16, но зачем в условиии дано <=20 не могу понять :( вот код первой проги // программа работы с переводом десятичного числа в любую другую систему счисления #include <stdio.h> #include <conio.h> #include <math.h> #include <string.h> // декларация процедур void preobrazovanie ( double a, int b) { int celoe, r,k; double test; double drob; double dtest, d, p; test=a; celoe=int(test); // урезаем дробную часть drob=test-celoe; // то, что находится после запятой k=0; r=1; while (celoe>0) { k=k+(celoe-(celoe/b)*b)*r; r=r*10; celoe=(celoe/b); } int m=10; double r1; r1=0.1; d=0; while (m>0) { m--; dtest=drob*b; d=d+int(dtest)*r1; r1=r1/10; drob=drob*b-int(dtest); } p=k+d; printf (" chislo budet viglyadet v vvide %lf \n",p); } void perevod ( double x) { int celoe, r,k,ml; double test,dt; double drob; char cel,plus[20]; test=x; celoe=int(test); // урезаем дробную часть drob=test-celoe; // то, что находится после запятой k=0; r=1; ml=0; printf(" chaslo imeet vid "); while (celoe>0) { k=int(double(celoe)/16); dt=k; k=celoe-dt*16; celoe=dt; if (k==0) cel='0'; else if (k==1) cel='1'; else if (k==2) cel='2'; else if (k==3) cel='3'; else if (k==4) cel='4'; else if (k==5) cel='5'; else if (k==6) cel='6'; else if (k==7) cel='7'; else if (k==8) cel='8'; else if (k==9) cel='9'; else if (k==10) cel='A'; else if (k==11) cel='B'; else if (k==12) cel='C'; else if (k==13) cel='D'; else if (k==14) cel='E'; else cel='F'; plus[ml]=cel; ml++; } while (ml>0) { printf (" %c",plus[ml-1]); ml--; } } void main (void) { double x; int n; // x- заданное число, n - система счисления printf (" vvedite chislo v desyati4noj sisteme s4isleniya \n"); scanf("%lf",&x); printf(" vvedite sistemu schisleniya? v kotoruyu perevodite \n"); scanf ("%d",&n); // проверка на то, является ли система перевода 16ричной, 10тичной или менее( 2я,8я и прочее) if (x>=0) if (n==10) printf (" chislo budet viglyadet v vvide %lf \n",x); else if ((n<10)&(n>1)) { // если система счисления меньше 10, то выполняем преобразование вызовам функции preobrazovanie(x,n); // printf (" chislo budet viglyadet v vvide %lf \n",x); } else if (n==16) { perevod(x); // printf (" chislo budet viglyadet v vvide %lf \n",xm); } else { printf(" ERROR!!!!!!!!!!!!!! \n"); printf (" proramma ne mozhet perevesti v vashu sistemu schisleniya \n"); printf (" ona ne podderzhivaet dannij format ili vashi dannie ne verni\n \a \a \a"); } else { printf(" ERROR !!! Nelzha rabotat s takim shislom \a \a \a \n"); printf(" Proverte pravilnost vvedennih dannih \n"); } getch(); // ждем до нажатия любой клавиши, если нажата, то мы сразу выйдем из программы } а во второй задаче я знаю алгоритм, но плохо знаю работу с файлами ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2006, 00:06 |
|
||
|
нужна ваша помощь
|
|||
|---|---|---|---|
|
#18+
со второй уже разобралась (наконец таки мою любиную книжечку мне вернули) #include <stdio.h> #include <conio.h> int main () { FILE *f1; FILE *f2; char ch1, ch2; f1=fopen("1.txt","r"); f2=fopen("2.txt","r+"); bool bul; fseek(f2, 0L, SEEK_END); putc(' ', f2); ch1 = getc(f1); while (ch1!=EOF) { bul = true; fseek(f2, 0L, SEEK_SET); ch2 = getc(f2); while (ch2!=' ') { if (ch1==ch2) { bul = false; } ch2 = getc(f2); } if (bul) { fseek(f2, 0L, SEEK_END); putc(ch1, f2); } ch1 = getc(f1); } fclose(f1); f1=fopen("1.txt","w"); fseek(f2, 0L, SEEK_SET); ch2 = getc(f2); while (ch2!=' ') { ch2 = getc(f2); } ch2 = getc(f2); while (ch2!=EOF) { putc(ch2, f1); ch2 = getc(f2); } fclose(f1); fclose(f2); printf("Ha}|{MuTe K/|aBuLL|y\n"); getch(); } машина-это не роскошь, роскошь это средство на ее передвижение... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2006, 14:07 |
|
||
|
нужна ваша помощь
|
|||
|---|---|---|---|
|
#18+
От вас скорее всего требовалось запрограммировать алгоритм перевода в любую систему счисления - а у пользователя спрашивать в какую именно. В общем виде алгоритм перевода выглядит следующим образом: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2006, 16:15 |
|
||
|
нужна ваша помощь
|
|||
|---|---|---|---|
|
#18+
Анатолий ШироковОт вас скорее всего требовалось запрограммировать алгоритм перевода в любую систему счисления - а у пользователя спрашивать в какую именно. В общем виде алгоритм перевода выглядит следующим образом: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. спасибки большое. сейчас реализую :) особенно спасибо за c = d / n; r = d % n; теперь я буду знать как в си ДИВ и МОД (вот что значит не зная языка пытаться на нем написать) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2006, 17:10 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34188025&tid=2029809]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
236ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 544ms |

| 0 / 0 |
