Форум программистов, компьютерный форум CyberForum.ru

Помогите перевести с PHP на С++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Побитовые операции http://www.cyberforum.ru/cpp-beginners/thread13374.html
Здравствуйте уважаемые читатели форума! СОвсем не представляю как сделать простейшую програмку на С++. Нужно вычислить номер позиции первого значащего символа. Всё это сделать с двоичным представлением числового значения при использовании типа Long int. Используя только самые простые команды (одно из условий задания) : |;&;<<;>>. Кто чем может помогите пожалуйста. Заранее благодарен.=-O:bravo:=-O
C++ Узнать размер файла Мне нужно прочитать обычный текстовый файл. Я думаю это сделать с помощью одной из функций семейства get(). Для этого (и не только) мне нужно узнать длину файла (т.е. сколько считывать символов). Мой первый (очень убогий) вариант: считываю с помощью get() символы из файла, прибавляя каждый раз счетчик (чтобы узнать размер фалйа), потом закрываю его. Далее открываю снова файл, выделяю массив... http://www.cyberforum.ru/cpp-beginners/thread13371.html
C++ задача C++
Вообщем имеется задача: Рассчитайте значение e в степени x, используя формулу: e^x = 1+x/1! +x^2/2!+x^3/3!+… Решить её можно так: не решать факториалы, а просто решения x, x/2, x/3 и т.д. доумнажать на предыдущий результат. Вот решение: #include <iostream> using namespace std;
C++ Найти, какое значение встречается в данном массиве наибольшее число раз
я ток что в универ поступил)) раньше с си++ ничего общего не имел)) и попал в очень сильную группу по программированию.. учительница очень пожилая и сней работать очень тяжело)) мне на лабораторной работе задали написать программу: найти какое значение встречается в данном массиве наибольшее число раз... я принципе понимаю как делать но мне опыт не позволяет напистаь программу. так что каму не...
C++ Зачем создавать новый проект http://www.cyberforum.ru/cpp-beginners/thread13352.html
Зачем создавать проект, если можно компилировать сам *.cpp с кодом? Что хранится в файлах проекта? Отличаются ли структуры проектов в разных компиляторах или проект созданный в одном так-же будет работать и в другом компиляторе? Если отличаются, то в чем может быть различие? ЗЫ: почему форум называется "программистов и компьютерщиков"? имхо "компьютерщики" очень расплывчатое понятие, да и...
C++ Как к файлам в папке обратиться? Всем привет! Такая проблема у меня. Сначала преамбула. Есть видеокамера, она снимает "неважнокакое" явление. Она подключена к компьютеру. При остановке работы камеры, она выдает мне отснятое в виде кадров(рисунков,изображений) в какую-нибудь папку(это можно настроить). При этом количество файлов мне неизвестно, названия их тоже (там автоматически подробнее

Показать сообщение отдельно
Гость2
Сообщений: n/a

Помогите перевести с PHP на С++ - C++

05.10.2008, 16:06. Просмотров 1061. Ответов 3
Метки (Все метки)

Есть задание - в большой проге понадобилось переводить из одной системы счисления (СС) в другую, нашел хороший класс, но он на PHP, которого я к сожалению не знаю, если есть добрые переводчики )) помогите пжл, вот код на PHP:
Код
class Renumeric {

   //Полный вариант набора цифр
   var $NumSet ='';
   
   //Входящий и исходящий набор цифр
   var $InputSet      ='';
   var $OutputSet      ='';

   //Буфер временного хранения. Содержит массив целых чисел.
   var $Buffer         =array();

   //Максимальное число в элементе буфера (основание вывода)
   var $MaxBufElement   =10;

   //Код ошибки
   /*
    *-------------------------------
    * 0 - нет ошибки
    * 1 - символа нет в наборе
    * 2 - символов в наборе больше 1
    *-------------------------------
    */
   var $Error         =0;

   /*** Конструктор ***/
   function Renumeric(){
      $this->NumSet=
         '0123456789'.   //10
         'abcdef'.   //16
         'ghijklmnopqrstuvwxyz'.   //36
         'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.   //62
         'абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ'; //128
      $this->InputSet      =substr($this->NumSet, 0, 16);
      $this->OutputSet   =substr($this->NumSet, 0, 10);
      $this->MaxBufElement=10;
   }
   
   /*** Устанавливает входящий и исходящих набор 
   и оставляет его, пока существует класс ***/
   function Preset($InSet, $OutSet){
      $this->InputSet=$InSet;
      $this->OutputSet=$OutSet;
      $this->MaxBufElement=strlen($OutSet);
   }

   function ADD($n){
      $pos=0;
      $buf=$n;
      do{
         if(isset($this->Buffer[$pos])){
            $buf+=$this->Buffer[$pos];
         }
         $this->Buffer[$pos]=$buf % $this->MaxBufElement;
         $buf=intval($buf / $this->MaxBufElement);
         $pos++;
      }while ($buf>0);
   }

   function MUL($n){
      $tmp_buf=array();
      $res_len=count($this->Buffer);
      if ($res_len==0){
         return;
      }
      $cur_pos=0;
      $buf=0;
      do{
         $a=0;
         if ($cur_pos<$res_len){
            $a=$this->Buffer[$cur_pos]*$n;
         }
         $a+=$buf;
         $tmp_buf[$cur_pos]=$a % $this->MaxBufElement;
         $buf=intval($a / $this->MaxBufElement);
         $cur_pos++;
      } while(($res_len>$cur_pos)||($buf!=0));
      $this->Buffer=$tmp_buf;
   }

   /*** Переводит из одной системы в другую ***/
   function Go($input, $inset=0, $outset=0){
      $result=true;
      /*** Временное сохранение глобальных наборов ***/
      if ($inset!=0 && $outset!=0){
         $tmp_in=$this->InputSet;
         $tmp_out=$this->OutputSet;
         $this->InputSet=substr($this->NumSet, 0, $inset);
         $this->OutputSet=substr($this->NumSet, 0, $outset);
         $this->MaxBufElement=$outset;
      }
      /*** Чтение входящего числа ***/
      $this->Buffer=array();
      $base_in=strlen($this->InputSet);
      $count_in=strlen($input);
      for ($i=0; $i<$count_in; $i++){
         $a=$input[$i];
         $present=substr_count($this->InputSet, $a);
         if($present==0){
            $result=false;
            $this->Error=1;
            break;
         }
         if($present>1){
            $result=false;
            $this->Error=2;
            break;
         }
         if ($i!=0){
            $this->MUL($base_in);
         }
         $this->ADD(strpos($this->InputSet, $a));
      }
      if ($result){
         $result='';
         $count_out=count($this->Buffer);
         for ($i=0; $i<$count_out; $i++){
            $result=$this->OutputSet[$this->Buffer[$i]].$result;
         }
      }
      /*** Восстановление прежних наборов ***/
      if (isset($tmp_in)){
         $this->InputSet=$tmp_in;
         $this->OutputSet=$tmp_out;
         $this->MaxBufElement=strlen($tmp_out);
      }
      return $result;
   }
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru