solonataly5
?>

Реализоавть блок-схему алгоритма : суммирование и вывод на печать суммы номеров вагонов проезжающего мимо пассажирского поезда. считать, что вы не видели "первый" вагон, таким образом на ввод подастся 2 числа: номер вагона, который вы увидели первым и номер последнего вагона. считать, что номера вагонов возрастают всегда. сложнее. все тоже самое, но номер последнего вагона не известен. вместо него на вход подастся пустая строка​

Информатика

Ответы

diannaevaaa

#include <iostream>

#include <string>

using  namespace std;

int main()

{

string w;

int b;

string arr;

 

getline(cin,w);

cin>>b;

cin.ignore();

getline(cin,arr);

 

if(w == "szyfruj")

{

 for(int i=0; i<arr.size(); i++)

 {

  if(int(arr[i])>=97 &&  int(arr[i])<=122 || int(arr[i])>=65 && int(arr[i])<=90)

  {

   if(int(arr[i])>=97 &&  int(arr[i])<=122)

   {

    if(int(arr[i])+b>122) arr[i]-=26;

    arr[i]+=b;

   }

   else

   {

    if(int (arr[i])+b>90) arr[i]-=26;

    arr[i]+=b;

   }

  }

 }

}

if(w == "odszyfruj")

{

 for(int i=0; i<arr.size(); i++)

 {

  if(int(arr[i])>=97 &&  int(arr[i])<=122 || int(arr[i])>=65 && int(arr[i])<=90)

  {

   if(int(arr[i])>=97 &&  int(arr[i])<=122)

   {

    if(int(arr[i])-b<97) arr[i]+=26;

    arr[i]-=b;

   }

   else

   {

    if(int (arr[i])-b<65) arr[i]+=26;

    arr[i]-=b;

   }

  }

 }

}

cout<<arr;

return 0;

}

Объяснение:

код  на с++ для примера

пункт  со  сдвигом  букв сам  сделаешь  

P. S.  у меня на  5 они  сдвигаются,

paninsv
Ошибок тут больше одной.
Во-первых, в операторе вывода стоит вызов функции ups, которой в качестве второго аргумента передается неизвестная переменная a. Если имелся в виду символ "а", его надо было заключить в одинарные кавычки.
Во-вторых, в теле функции ups определяется значение n в цикле. Даже, если искомый символ найден и n получит значение позиции этого символа в слове, то если слово просмотрено не полностью, следующий же проход по циклу снова сбросит n в ноль. Следовательно, эта функция будет выдавать верный результат только если искомая буква - последняя в слове.

var
  slovo: string;
  i: integer;

function ups(var s: string; ch: char): integer;
var
  i, n: integer;
begin
  i:=1;
  n:=0;
  while (i<=length(s)) and (n=0) do
    begin
    if s[i] = ch then n := i;
    i:=i+1
    end;
  ups:=n
end;

begin
  writeln('vvedite slovo');
  readln(slovo); writeln('N = ', ups(slovo, 'a'));
end.

Замечание: в языке Паскаль имеется функция Pos, производящая поиск подстроки в строке...

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Реализоавть блок-схему алгоритма : суммирование и вывод на печать суммы номеров вагонов проезжающего мимо пассажирского поезда. считать, что вы не видели "первый" вагон, таким образом на ввод подастся 2 числа: номер вагона, который вы увидели первым и номер последнего вагона. считать, что номера вагонов возрастают всегда. сложнее. все тоже самое, но номер последнего вагона не известен. вместо него на вход подастся пустая строка​
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

gen218
TatiyanaBe20135263
Васильевна Владимирович
bb495
Berezovskaya
atupicyn754
apetrov13
Андреевна
Lenuschakova1982316
Yelena_Gennadevna
Артем Уберт
Елена_Кошевой
infocenterbla
a8227775
barnkim