Перевести числа из текста, записанные в 6-ной системе счисления, в 10-ную
Помогите пожалуйста решить задачу:
Выделить из текста целые числа, записанные в 6-ной системе счисления (считать, что они положительны и в тексте встречаются в виде отдельных "слов") и перевести их в 10-ную систему счисления. character str*20,st*20,sl*15 integer ns,ks,i,dl,ch logical p write (*,*) 'Vvedite stroku' read(*,'(A20)')str st=adjustl(str) L=len_trim(st) ns=1 ks=index(st,' ') do while (ks<=L+1) sl=st(ns:ks) dl=ks-ns p=.true. do i=1,dl,1 if (sl(i:i)<'0'.or.sl(i:i)>'5') then p=.false. write(*,*) 'Slovo ne yavlyatesa chislom' end if end do !perevod iz 6-noi systemi v 10-nyu systemy if (p) then write (*,*) 'Slovo yavlyaetsa chislom' read(sl,'(I10)')ch end if ns=ks+1 ks=ks+index(st(ks+1:),' ') write(*,16)st(ns:ks) 16 format (1x,A) pause end do end |
А что это за ЯП? Извините, что-то не могу сообразить. Фортран?
|
Цитата:
|
Цитата:
Другой язык не устроит? Паскаль, например? |
Хотелось бы на фортране конечно же. Но пожалуй сойдет, попробую по аналогии перевести на фортран
|
Вложений: 1
Цитата:
Код:
Var Val(S,N,Code) - преобразует строку в число. Code - просто флажок корректности операции. Ord(C) - возвращает код символа C. div - целочисленное деление. mod - остаток от деления. |
Спасибо. На фортране пишет при любом раскладе "слово не является числом" не знаете с чем это может быть связано?
|
Цитата:
P.S. Как видите, моя программа справляется "на ура". Попробуйте в ней разобраться. |
Цитата:
Цитата:
String s="44"; Int ss=Integer.parseInt(s); |
Цитата:
Переводит слова строки в числа Проблема вообщем то в том, что я обозначаю p=.true. (т.е. в строке есть слова-являющиеся цифрами). По идее при вводе строки, состоящей из слов и чисел - на экране появится результат: "слово является числом". Но такого не происходит. Какого бы вида строку я не вводил - пишет, что "слово не является числом" (т.е. p=.false.). Естественно, если слово не является числом, соответственно переводить в систему счисления будет нечего.tehno035 |
Часовой пояс GMT +4, время: 22:00. |
Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.