Sergei248
?>

Спрогой. вклад составляет x рублей. ежегодно он увеличивается на p процентов, после чего дробная часть копеек отбрасывается. каждый год сумма вклада становится больше. определите, через сколько лет вклад составит не менее y рублей. входные данные программа получает на вход три натуральных числа: x, p, y. выходные данные программа должна вывести одно целое число. написал: program u1; var x, p, y, year: longint; s: real; begin readln (x); readln (p); readln (y); s: =x; year: =0; while s begin while s s: = s+(1+p/100); year: =year+1; end; writeln (year); end. не выводит ответ. найти ошибку. я новичок.

Информатика

Ответы

НосовЖелиховская
Не особо знаю паскаль, так что дабы не накосячить с синтаксисом, покажу на примере. Тут всё просто - тебе лишь нужен цикл For и расчет процентов.

FOR i = 1 TO 100
percents = FIX(x * p / 100) ' здесь у нас есть переменная percents, которой присваиваются округленные функцией fix проценты (насколько я знаю, в паскале аналогичная функция называется Round)
x = x + percents 'тут всё понятно - переменной X присваивается она сама и годовые проценты по вкладу
IF x >= y THEN 'проверяем, не равен или не превысил ли наш вклад ожидаемую сумму
PRINT i 'в цикле For можно не заморачиваться с отслеживанием лет, переменная i сама подсчитает количество итераций-лет
END 'завершаем программу
END IF
NEXT i ' конец цикла
Можно ещё чисто для себя добавить в условие вывод переменной X, чтобы было нагляднее.  
Galina3241
Везде значения вводятся с клавиатуры!
на java
если изучали массив:
public class qwert {
public static void main(String args[]) {
Scanner scn = new Scanner(System.in);
int[] a = new int[5];
int k = 0;
for (int i = 0; i < 5; i++) {
a[i] = scn.nextInt();
k = k + a[i];
if (i == 4)
System.out.println(k/i);
}
}}
если не изучали массив:
public class qwert {
public static void main(String args[]) {
Scanner scn = new Scanner(System.in);
int a = scn.nextInt();
int b = scn.nextInt();
int c = scn.nextInt();
int d = scn.nextInt();
int e = scn.nextInt();
int s = (a + b + c + d + e) / 5;
System.out.println(s);
}}
на паскале через массив:
var a:array [1..5] of integer;
i:integer;
s:real;
begin
for i := 1 to 5 do
begin
readln(a[i]);
s := s + a[i];
if i = 5
then
write (s/i);
end;
end.
не через масивы:
var a,b,c,d,e :integer;
s:real;
begin
readln(a,b,c,d,e);
s := (a+b+c+d+e)/5;
write(s);
end.
sharikplushelen

var

  s : string;

  i : integer;

  f : boolean;

begin

  readln (s);

  writeln ('Тут ', length (s), ' символов');

  f := true;  

for i := 1 to length (s) div 2 do

    if s[i] <> s[length (s) - i + 1] then f := false;

  writeln ('Это слово является перевертышем: ', f); //True/False

end.

 

var

  s : string;

  i, k, count : integer;

  c : char;

begin

  readln (s);

  count := 0;

  for i := 1 to length (s) do

    if s[i] <> ' ' then

    begin

       c := s[i];

       k := i + 1;

       break;

    end;

  for i := k to length (s) do

    if (s[i] = ' ') and (c <> ' ') then

    begin

       if s[i - 1] = c then inc (count);

       c := ' ';

    end

    else if c = ' ' then c := s[i];

  if (c <> ' ' ) and (s[length (s)] <> ' ') and (c = s[length (s)]) then inc (count);

  writeln (count);

end.

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

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

Спрогой. вклад составляет x рублей. ежегодно он увеличивается на p процентов, после чего дробная часть копеек отбрасывается. каждый год сумма вклада становится больше. определите, через сколько лет вклад составит не менее y рублей. входные данные программа получает на вход три натуральных числа: x, p, y. выходные данные программа должна вывести одно целое число. написал: program u1; var x, p, y, year: longint; s: real; begin readln (x); readln (p); readln (y); s: =x; year: =0; while s begin while s s: = s+(1+p/100); year: =year+1; end; writeln (year); end. не выводит ответ. найти ошибку. я новичок.
Ваше имя (никнейм)*
Email*
Комментарий*

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

Иванов
aggeeva
heodbxbbshe
Pavlushina-Novikova
Грачева мураховская
mail9
argo951385
qcrv15312
Vladimirovna1858
nata27-73589
serebrennikova99
nikiforovako76
NikonA83
knyazevskayad
andre6807