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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.06.2011, 14:07   #1
M@rgo
Пользователь
 
Аватар для M@rgo
 
Регистрация: 08.06.2011
Сообщений: 11
По умолчанию Строки

программа не работает!!!!! я уже не зна что и делать...можете ее перепроверить???ПОЖАЛУЙСТА!!!!!!!!О чень нужно!!!!!!

задача :
Строки
№22
Дана строка, изображающая целое число. Вывести сумму цифр этого числа.

Код:
VAR
 i,n,S,S1:String;
 Sum,Code:Word;
 BEGIN
 Writeln('Enter the string:');
 Readln(S);
 Sum:=0;
 For i:=1 to Length(S) do
 begin
S1:=S[i];
 Val(S1,n,Code);
 Inc(Sum,n);
 end;
 Writeln('Sum= ',Sum);
 Readln
 END.

Последний раз редактировалось Stilet; 11.06.2011 в 16:22.
M@rgo вне форума Ответить с цитированием
Старый 09.06.2011, 14:16   #2
mss
Заблокирован
 
Регистрация: 27.05.2010
Сообщений: 1,099
По умолчанию

У меня работает.
что я неправильно делаю ?
mss вне форума Ответить с цитированием
Старый 09.06.2011, 14:30   #3
M@rgo
Пользователь
 
Аватар для M@rgo
 
Регистрация: 08.06.2011
Сообщений: 11
По умолчанию

Выдает ошибку:

Invalid FOR control variable:

The FOR Statement control variable must must be a simple variable defined in the declaration part of the current subprogram.

M@rgo вне форума Ответить с цитированием
Старый 09.06.2011, 14:40   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Код:
VAR
i,n,S,S1:String;
ну разумеется!
типы данных заданы неверно!

попробуйте так:
Код:
VAR
  S,S1:String;
  i,n,Sum,Code:Word;
p.s. я бы вместо Word использовал Integer - но это уже на ваше усмотрение!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 09.06.2011, 14:45   #5
M@rgo
Пользователь
 
Аватар для M@rgo
 
Регистрация: 08.06.2011
Сообщений: 11
По умолчанию

Все!!! додумала...вот что получилось))) работает!!!!

Код:
VAR
 S,s1:String;
 L:Integer;
 i,n,Sum,Code:Integer;
BEGIN
Writeln('Enter the string:');
Readln(S);
Sum:=0;
L:=Length(s);
For i:=1 to L do
 begin
   S1:=s[i];
   Val(S1,n,Code);
   Inc(Sum,n);
 end;
Writeln('Sum= ',Sum);
Readln
END.


___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 09.06.2011 в 15:30.
M@rgo вне форума Ответить с цитированием
Старый 09.06.2011, 14:46   #6
M@rgo
Пользователь
 
Аватар для M@rgo
 
Регистрация: 08.06.2011
Сообщений: 11
По умолчанию

Спасибо всем большое!!!!!!!!!
M@rgo вне форума Ответить с цитированием
Старый 09.06.2011, 15:30   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

пожалуйста.

и на будущее,
не забывайте, пожалуйста, оформлять исходный код на форуме так, как положено.

Успехов!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 11.06.2011, 10:56   #8
M@rgo
Пользователь
 
Аватар для M@rgo
 
Регистрация: 08.06.2011
Сообщений: 11
По умолчанию

Спасибочки!!!! Можно еще попросить?очень нужно!!!!!
Помогите с объяснением!!!ПАЖАЛУЙСТА!!!! нужно описать работу задачи по сточно!!!

задача 22: дана строка изображающая целое положительное число. Вывести сумму цифр этого числа.
Код:
VAR
 S,s1:String;
 L,i,n,Sum,Code:Integer;
 BEGIN
 Writeln('Enter the string:');
 Readln(S);
 Sum:=0;
 L:=Length(s);
 For i:=1 to L do
 begin
 S1:=s[i];
 Val(S1,n,Code);
 Inc(Sum,n);
 end;
 Writeln('Sum= ',Sum);
 Readln
 END.

Последний раз редактировалось Stilet; 11.06.2011 в 16:22.
M@rgo вне форума Ответить с цитированием
Старый 11.06.2011, 11:24   #9
Бурундук
Пользователь
 
Аватар для Бурундук
 
Регистрация: 13.10.2009
Сообщений: 21
По умолчанию

Код:
VAR //объявляем переменные
S,s1:String; //строковые переменные
L,i,n,Sum,Code:Integer; //числовые переменные
BEGIN // начало программы
Writeln('Enter the string:'); // "введите строку"
Readln(S); //выводим строку на экран
Sum:=0; //присваемваем переменной Sum значение равное 0
L:=Length(s); //присваемваем переменной Lзначение дины строки
For i:=1 to L do //цикл от 1 до L
begin
S1:=s[i]; //присваемваем переменной s1значение i того элемента строки
Val(S1,n,Code); //преобразовываем строковое значение в числовое
Inc(Sum,n); //увеличиваем значение переменных на 1
end;
Writeln('Sum= ',Sum); //выводим на экран значение переменной Sum
Readln //заддержка
END. //конец программы
вроде не накосячил =)
Бурундук вне форума Ответить с цитированием
Старый 11.06.2011, 18:29   #10
M@rgo
Пользователь
 
Аватар для M@rgo
 
Регистрация: 08.06.2011
Сообщений: 11
По умолчанию

Хорошо, спасибо большое!!!!!

Во эту строку:
Inc(Sum,n);
можно записать так:
Sum:=Sum+n;
да?и буде тоже самое

А что с этой строкой:
Val(S1,n,Code);
что сдесь обозначает Code?
M@rgo вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сделать в гриде строки выше, чтобы не растягивать строки до бесконечности kris__tina БД в Delphi 1 09.06.2011 15:31
Даны строки S и S0. Удалить из строки S все подстроки, совпадающие с S0 . Если совпадающих подстрок нет, Шпунюся Помощь студентам 1 16.12.2010 21:02
Создание пустой строки и копирование в неё содержимое предыдущей строки Gvaridos Microsoft Office Excel 2 29.10.2010 13:33
Определять максимальную длину той части строки s, которая не содержит символы из строки s1. Александе еть я Общие вопросы C/C++ 5 13.04.2010 20:54
Перенести символа с начала строки в место перед запятой этой же строки. Zhiltsov Microsoft Office Excel 4 05.06.2009 13:10