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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.05.2010, 21:44   #1
Lazy_Bitch
Пользователь
 
Регистрация: 29.06.2009
Сообщений: 10
По умолчанию Потоки. Использование стандартного ввода–вывода.

Подскажите текст программы.
Задание: Написать программу, считывающую строку, состоящую из символа и числа(может быть отрицательным). Если символ - "*", то записывается целая часть числа в 8-ной, 10-ной, 16-ной форме. Если - "#", то выводится дробная часть. Ширина поля - 10, точность - 7, пробелы заменяются символами ":" . Если введен иной символ, прога запрашиват повторный ввод. Предусмотрена работа над ошибками.
Примерный вид:
Код:
#include <iostream.h>
#include <stdlib.h>
#include <conio.h>

main(){
 char s[50],*buf;
 cin>>s;
 int len=strlen(s);
 for(int i=0;i<=len;i++){
  if(s[i]=='*'){
  buf=strchr(s,'.'); }
  if(s[i]=='#'){
   int k=s[0];
   cout<<k<<oct<<k<<hex<<k; getch(); exit(1);
  }
 }
 char *a=strcat("0",buf);
 cout.width(10);
 cout.precision(7);
 cout.fill(':');
 cout<<atof(a);
 getch();
 return 0;
}
Lazy_Bitch вне форума Ответить с цитированием
Старый 05.05.2010, 12:15   #2
mrChester
Я
Форумчанин
 
Аватар для mrChester
 
Регистрация: 24.04.2010
Сообщений: 693
По умолчанию

Код:
 char s[50],buf[50]=NULL;
 bool pr;
 float num;
 int j;
 do
 {pr=false;
   cout <<"Vvedite chislo:"<<endl;
   cin>>s;
   int len=strlen(s);
   try
   {if((s[0]=='*')||(s[0]=='#'))
    {j=0;
     while (i<len-1) //записываем в buf число
     {
       buf[j]+=s[i+1]; 
       i++; j++;
     }
     buf[j]='\0';
     num=StrToFloat(buf);
    }
    else pr=true;
   }
   catch(...)
    pr=true;
 } while (pr)
Теперь в num у нас хранится число и можно делать с ним все что угодно...
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©.
mrChester вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
переопределение ввода и вывода в С++ blackbanny Помощь студентам 12 03.05.2010 13:08
Перенаправление стандартного ввода/вывода в файл Роман Радер Общие вопросы C/C++ 1 09.01.2010 18:34
Перенаправление ввода/вывода dudeboy Win Api 0 16.11.2009 11:36
Переназначение стандартного потока вывода в консоль pu4koff Общие вопросы C/C++ 2 26.10.2009 14:16
tasm, использование команд ввода/вывода. Доступ к портам iggor Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 17.06.2009 22:58