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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.04.2008, 14:43   #1
alena-yalymova
Пользователь
 
Регистрация: 03.04.2008
Сообщений: 21
Восклицание Пожалуйста помогите решить задачи на Массивы, текстовые данные и оператор цикла

Здрасвтсвуйте. Пожалуйста, помогите решить четыре задачки до субботы (можно утром в воскресенье 05.04.2008 г.)
1.Вычислить значения функции и распечатать в виде таблицы y=((Xi,Yi/arccosX)+0,41(в 3 степ.)*tg(x+0,5))(вся скобка в 3 степ.) X1=-1, Xi+1+Xi=0.5, i=0.1,...,7 (Выглядит вот так)

( Xί,Yί +0.41³*tg(x+0.5))³
y= arccosX X1=-1, Xί+1=0.5, ί=0.1,…,7

2. Найти произведение ненулевых элементов в одномерном числовом массиве и напечатать.

3. Дана строка вида "число1+число2-число3". Вычислить числовое значение выражения и распечатать.

4. Задан массив из семи строк. В каждой строке "наименование товара_цена". Увеличить цены на 10%, отсортировать массив по возрастанию цен, распечатать.

Очень надуюсь на Вашу помощь. А то не охота, чтоб с пятого курса отчислили, из-за того, что я Паскаль вообще не понимаю.
alena-yalymova вне форума Ответить с цитированием
Старый 03.04.2008, 14:54   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Найти произведение ненулевых элементов в одномерном числовом массиве и напечатать.
Код:
var a:array[1..10] of integer;i:integer;
begin
for i:=1 to 10 do a[i]:=5-random(9)
for i:=1 to 10 do
 if a[i]<>0 then writeln(a[i]:5);
end.
Цитата:
Дана строка вида "число1+число2-число3". Вычислить числовое значение выражения и распечатать.
Код:
var s:string;r,c,i:integer;
begin  {$o-}
   s:='12+65-99';
val(copy(s,1,pos('+',s)),i,c);
delete(s,1,pos('+',s));
r:=i;
val(copy(s,1,pos('-',s)),i,c);
delete(s,1,pos('-',s));
r:=r+i;
val(s,i,c);
r:=r-i;
Writeln(r);
end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.04.2008, 15:25   #3
alena-yalymova
Пользователь
 
Регистрация: 03.04.2008
Сообщений: 21
По умолчанию

[QUOTE=Stilet;87610]
Код:
var a:array[1..10] of integer;i:integer;
begin
for i:=1 to 10 do a[i]:=5-random(9)
for i:=1 to 10 do
 if a[i]<>0 then writeln(a[i]:5);
end.

Вот в этой строке for i:=1 to 10 do он пишет, что "Error 42: error in expression". Тут чего то не хватает?
alena-yalymova вне форума Ответить с цитированием
Старый 03.04.2008, 15:37   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

for i:=1 to 10 do a[i]:=5-random(9) ;
Точку с запятой провтыкал
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.04.2008, 15:41   #5
alena-yalymova
Пользователь
 
Регистрация: 03.04.2008
Сообщений: 21
По умолчанию

А про строку "число1+...". Ошибки он не выдает, но и открывать не хочет, хотя комплитирует, но не запускает. Что-то не прописано?
alena-yalymova вне форума Ответить с цитированием
Старый 03.04.2008, 15:42   #6
alena-yalymova
Пользователь
 
Регистрация: 03.04.2008
Сообщений: 21
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
for i:=1 to 10 do a[i]:=5-random(9) ;
Точку с запятой провтыкал
Я поставила точку с запятой, но ошибка появилась все равно.
alena-yalymova вне форума Ответить с цитированием
Старый 03.04.2008, 15:44   #7
alena-yalymova
Пользователь
 
Регистрация: 03.04.2008
Сообщений: 21
По умолчанию

for i:=1 to 10 do
А вот без этой строки все нормально, но опять не открывает программу.
alena-yalymova вне форума Ответить с цитированием
Старый 03.04.2008, 15:49   #8
alena-yalymova
Пользователь
 
Регистрация: 03.04.2008
Сообщений: 21
По умолчанию

Все получилось, только в этой программе
Код:
var s:string;r,c,i:integer;
begin  {$o-}
   s:='12+65-99';
val(copy(s,1,pos('+',s)),i,c);
delete(s,1,pos('+',s));
r:=i;
val(copy(s,1,pos('-',s)),i,c);
delete(s,1,pos('-',s));
r:=r+i;
val(s,i,c);
r:=r-i;
Writeln(r);
end.
[/QUOTE]
Ответ получается -99. А как можно сделать, чтоб числа вводить самому?

И еще, огромное спасибо, что вы удилили мне время и помогли. Вы мой спаситель.
alena-yalymova вне форума Ответить с цитированием
Старый 03.04.2008, 15:53   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну не числа а строку:
предположим:
Код:
var s:string;r,c,i:integer;   
begin  {$o-}   
Write('Веедите матоперацию X+Y-Z'); readln(s);
{   s:='12+65-99';   }
...
Цитата:
но опять не открывает программу.
Что значит не открывает? Не открывает файл или просто результаты не показывает?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.04.2008, 15:57   #10
alena-yalymova
Пользователь
 
Регистрация: 03.04.2008
Сообщений: 21
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Ну не числа а строку:
предположим:
Код:
var s:string;r,c,i:integer;   
begin  {$o-}   
Write('Веедите матоперацию X+Y-Z'); readln(s);
{   s:='12+65-99';   }
...
И все равно ответ получается -99. Сюда надо ввечти еще переменную, чтоб считались введенные пользователем числа?

Цитата:
Сообщение от Stilet Посмотреть сообщение
Что значит не открывает? Не открывает файл или просто результаты не показывает?
Уже все открывается.
alena-yalymova вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пожалуйста помогите решить задачи по Паскалю Vladislav_87 Паскаль, Turbo Pascal, PascalABC.NET 3 17.05.2008 22:41
Пожалуйста помогите решить 4 задачки на массивы и оператор цикла. alena-yalymova Паскаль, Turbo Pascal, PascalABC.NET 8 05.04.2008 22:21
Оператор цикла с предусловием While. Оператор цикла с пост условием Repeat McMilin Помощь студентам 7 11.11.2007 14:10
помогите решить задачи!пожалуйста!! лиса Паскаль, Turbo Pascal, PascalABC.NET 9 12.01.2007 03:34