![]() |
Перевод с Pascal на C++
Всем привет.начал переводить прогу с паскаля на си и вот такая вот проблемка встала.нужно перевести вот эту процедуру
Procedure Print (n:byte; a:longint); Begin {вывод числа a} Write(' ':n); Write(a); End; а как задать размерность поля вывода пробелов(выделено жирным) на си я не знаю.переведите пожалуйста эту процедурку.буду очень благодарен |
2 варианта:
Код:
long n = 100; Код:
void __pascal Print(unsigned char n, int a) Код:
// setfill(...) вызывает ostream::fill(...); |
спс)).тему можно закрывать
|
Помогите пожалуйста перевести задачи с Pascal'я на C++
1. Вычислить A и B 2. Является ли введенное 4-значное число палидромом? 3. Определить сумму введенных цифр 4. Вычислить сумму чисел введенных до последнего отрицательного 5. Определить число пар соседних элементов массива имеющих одинаковый знак Заранее огромнейшее спасибо! :) |
Первое как то так:
Код:
#include <stdio.h> |
Цитата:
c2:=trunc((x-c1*1000-c2*100)/100); с2 используется для своего же определиния а вот на си уже с исправлениями: Код:
#include <stdio.h> |
В третей тоже ошибка
if (ord(c)=(48+i)) then x:=1; в конце должно быть x:=i; вот на си Код:
#include <stdio.h> |
4:
Код:
#include <stdio.h> |
Ну и последний:
Код:
#include <stdio.h> |
Alan85, огромнейшее Спасибо!! :) Очень выручили Вы меня.. :up
|
Да незашто... Давно не программировал ничего - вот решил вспомнить как это да и за одно помочь . Все довольны :)
|
помогите перевести эту задачу пожалуйста:
uses crt; var st:string; i,j:byte; begin writeln('Введите арифметическое выражение: '); readln(st); for i:=2 to length(st) do begin if st[i-1] in ['+','-','*','/'] then if st[i] in ['+','-','*','/'] then inc(j); end; for i:=2 to length(st) do begin if (st[i-1] in ['0'..'9']) and (st[i] in [' ']) and (st[i+1] in ['0'..'9'])then inc(j); if (st[i-1] in ['+','-','*','/']) and (st[i] in [' ']) and (st[i+1] in ['+','-','*','/'])then inc(j); end; if j=0 then writeln('Данное выражение записано верно!') else writeln('Данное выражение записано не верно!'); end. как не пытался постоянно выдаёт какую-то ошибку |
помогите пожалуйста перевести программу в си ++
Program pr1; Uses crt; Var n:integer; a,c,k,ka,kc,kr:byte; m:set of byte; Begin clrscr; repeat write('Введите натуральное число n='); readln(n); until n>0; repeat write('Введите цифру a='); readln(a); until a in [0..9]; k:=0;//cколько всего цифр ka:=0;//сколько=а kc:=0;//сколько четных kr:=0;//сколько разных m:=[]; while n>0 do begin k:=k+1; c:=n mod 10; if c mod 2=0 then kc:=kc+1; if c=a then ka:=ka+1; if not (c in m) then begin kr:=kr+1; m:=m+[c]; end; n:=n div 10; end; writeln('Четных цифр=',kc); writeln('Разных цифр=',kr); if ka>2 then write('Цифра ',a,' встречается больше 2 раз') else write('Цифра ',a,' встречается не больше 2 раз'); readln end. |
program Boolean4;
var A,B: Integer; begin Write('Введите число A: '); Readln(A); Write('Введите число B: '); Readln(B); Writeln((A>2) and (B <=3)); end. |
Цитата:
Код:
#include <stdio.h> |
Время: 17:56. |
Время: 17:56.
© OSzone.net 2001-