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

Выведите в выходной файл округленное до n знаков после десятичной точки число E - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Как найти определенные байты в процесе? http://www.cyberforum.ru/cpp-beginners/thread933643.html
Всем привет помогите мне нужно найти байты в процесе Как это реализовать код в DLL Байты 33 E6 00 00 00 00 01 00 00 00 0D
C++ Рекурсивная функция для определения палиндромов Нужно написать программу , которая с помощью рекурсивной функции определяет, является ли строка палиндромом (радар, потоп, т.е. слова которые читаются так же, если их читать справа налево). Программу написал, но она все слова определяет палиндромами и почему - то массив slovo выходит за пределы. Помогите найти ошибку #include<iostream> using namespace std ; int testPalindrome (char , int,... http://www.cyberforum.ru/cpp-beginners/thread933638.html
Почему не работает? C++
Здравствуйте уважаемые программисты! Вроде должно работать. Программа считает среднее арифметическое значение: Вот код. #include "stdafx.h" #include <iostream> // для cout, cin, endl, cin.get(); using namespace std; //....................................................... class obj
C++ Задача из Страуструпа про исключения
Пожалуйста, помогите с задачкой из книги Страуструпа: 14.12.9. (*1) Имеется int main() { /* … */ } Внесите сюда изменения, направленные на перехват всех исключений, при возникновении которых выдается сообщение об ошибке и вызывается функция abort(). Подсказка: функция call_from_C из 14.9 не полностью обрабатывает все случаи. Функция call_from_C() выглядит так:
C++ Подскажите с сайтом по программированийю http://www.cyberforum.ru/cpp-beginners/thread933552.html
Может быть кто-то знает сайт с задачами по программированию? Не важно, что у него не будет тестирующей системы, главное что-бы на нем были задачи (желательно охватывающие весь объем С++ распределленные по темам: строки, массивы, классы, структуры ...). Т. е. начинаю с простейших задач вида "вывести Hello Word!" и заканчивая, классами, рекурсиями и т. д. Желательно что-бы в задачах требовалось...
C++ Как запустить тест с CppUnit? У меня не выполняются тесты, когда использую CppUnit. Выдает ошибку 1>LINK : fatal error LNK1104: cannot open file 'cppunit.libkernel32.lib' Хотя такой библиотеки нет... Запускаю в VS 2010. Версия CppUnit 1.12.1 Please help!:help: подробнее

Показать сообщение отдельно
murderer
3175 / 1398 / 69
Регистрация: 06.10.2010
Сообщений: 3,017
20.08.2013, 18:39     Выведите в выходной файл округленное до n знаков после десятичной точки число E
Код базонезависимый был?
Как раз таки нет - наоборот заточенный под конкретный компилятор. Например код к задаче "Разные цифры" выглядит примерно так
Delphi
1
2
3
4
5
6
repeat
  asm
  dq <опкоды>
  end;
  write(x:3)
until x=36
Внутри асм-вставки расположен условный переход, поэтому write вызывается только при определённом условии. Кроме того компилятор заменяет переменную x регистром и это очень облегчает задачу.

P.S. этот код сейчас на первом месте в топе

Добавлено через 12 минут
Ещё пытался находить в адресном пространстве пустоты и использовать их как буффер для результирующей строки, но кажется это не очень помогло.

Добавлено через 5 минут
А вот - нашёл
Кликните здесь для просмотра всего текста
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
var
  s: Pchar;
  a: word;
begin
  reset(input,'INPUT.TXT');
  read(a);
  asm
  std
  inc edx
  mov ebx,eax
  mov ah,2
  @1:mov ecx,edx
     mov esi,406000h
     mov edi,esi
     @2:lodsb
        add al,al
        add al,ah
        aam
        stosb
     loop @2
     xadd  [edi],ah
     setnz al
     add   edx,eax
     dec   ebx
  jnz @1
  mov ebx,406001h
  @3:dec ebx
     add byte[ebx],30h
     dec edx
  jnz @3
  end;
  rewrite(output,'OUTPUT.TXT');
  write(s)
end.

И финальный вариант
Кликните здесь для просмотра всего текста
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
var
  s: Pchar;
  a: word;
begin
  reset(input,'INPUT.TXT');
  read(a);
  asm
  dq$D18902B4C38942FD,$ACF78900406000BE,$E2AA0AD4E000C000,$01C0950F27C00FF6,$406001BBE2754BC2,$F9754A3003804B00
  end;
  rewrite(output,'OUTPUT.TXT');
  write(s)
end.
 
Текущее время: 21:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru