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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 01.05.2017, 19:00   #1
leonid_spartak
Пользователь
 
Регистрация: 18.02.2017
Сообщений: 43
По умолчанию Перевод из Pascal в Си

Доброго времени суток программисты, помогите пожалуйста перевести с Pascal на Си данный код.
Вот если что само задание: "В целочисленном векторе vector n найти второй по порядку отрицательный и предпоследний положительный элементы и поменять их местами. Предусмотреть случай, когда таких элементов в векторе нет." Заранее спасибо.

Код:

Код:
Var V:array[1..100] of integer;
    n,vmin,vmax,i,j,p,k,t,buf:integer;
Begin
    write('Введите n: ');readln(n);
    write('Введите vmin: ');readln(vmin);
    write('Введите vmax: ');readln(vmax);
    k:=0;t:=0;
    writeln('Исходный');
    For i:=1 to n do
    Begin
      V[i]:=random(31)-15;
      write(V[i]:4);
      if (V[i]<0)and(t=0)and(k=1) then t:=i;//второй отрицательный
      if (V[i]<0) then k:=1;
    End;
    j:=0;p:=0;
    For i:=n downto 1 do
    Begin
      if (V[i]>0)and(p=0)and(j=1) then p:=i;//предпоследний положительный
      if (V[i]>0) then j:=1;
    End;
    writeln;
    if (t>0)and(p>0) then
    Begin
      writeln('Второй отрицательный = ',V[t],' он находится V[',t,']');
      writeln('Предпоследний положительный = ',V[p],' он находится V[',p,']');
      buf:=V[t];
      V[t]:=V[p];
      V[p]:=buf;
      writeln('Преобразованный');
      For i:=1 to n do
       write(V[i]:4);
    End
    else writeln('Нету второго отрицательного или предпоследнего положительного');
    readln;
End.

Последний раз редактировалось Вадим Мошев; 01.05.2017 в 21:27.
leonid_spartak вне форума
Старый 01.05.2017, 19:11   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Тут не бесплатное бюро переводов.

Назовите нормально тему, покажите свои наработки, конкретные вопросы и т.п.

Или в раздел Фриланс если вы не хотите ничего делать, а ищете кого-то, кто выполнит ваши задачи за вознаграждение.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
перевод Pascal - C++ spinogryz_ua Помощь студентам 0 12.11.2012 00:02
перевод в C++ из Pascal =IS= Помощь студентам 1 24.05.2012 00:37
Перевод с PasCal на Си bodya00728 Помощь студентам 0 16.05.2012 15:03
Перевод кода из Pascal в Object Pascal zemskov77 Общие вопросы Delphi 1 03.01.2009 09:37