جمع الاعداد في ميمو
#1
السلام عليكم
كيف جمع اعداد مدخلة في المكون ميمو
1
1
2
3
4
----------
11
مثل هذا
الرد
#2
و عليكم السلام :
هذه دالة سريعة تفي بالغرض :

PHP كود :
function SumMemo(AMemo: TMemo): integer;
var
  
i: integer;
  
Value: integer;
begin
  Result 
:= 0;
  for 
i := 0 to AMemo.Lines.Count - 1 do
    
begin
      
if TryStrToInt(String(AMemo.Lines[i]), Value) then
        inc
(Result, Value);
    
end;
end; 
تمرر للدالة ال Memo التي تريد جمعها .
Open Your Source .. Open Your Mind
الرد
#3
تفضل

PHP كود :
procedure TForm1.Button1Click(Sender: TObject);
var
i , j : integer;
begin
 j 
:= 0;
 for 
i := 0 to memo1.lines.count -1  do
    
j := j + StrToInt(memo1.lines[i]);

    
edit1.Text := IntToStr(j);
end; 
الرد
#4
كل الشكر والمحبة اخي SMP3
تم بعون الله الحل ولكن هل الدالة TryStrToInt هي نفس strtoint
وشكراً جزيلاً
الرد
#5
وليدDL كتب :كل الشكر والمحبة اخي SMP3
تم بعون الله الحل ولكن هل الدالة TryStrToInt هي نفس strtoint
وشكراً جزيلاً
الدالة TryStrToInt تعمل نفس عمل الدالة StrToInt لكن هناك بعض الاختلافات :
الدالة TryStrToInt تتحقق من أن المحرف رقم لتفادي أية أخطاء على غرار الدالة StrToInt ..
لان الميمو يمكن أن تكون بها Line فارغة .. مما قد يسبب مشكل في التحويل
Open Your Source .. Open Your Mind
الرد
#6
السلام عليكم
حل متميز SMP3 اخ لكن بما انك استخدمت TryStrToInt لا داعي الى التحويل القسري
كود :
TryStrToInt(String(AMemo.Lines[i]), Value)
كود :
TryStrToInt(AMemo.Lines[i], Value)
و لرب نازلة يضيق لها الفتى ذرعا و عند الله منها المخرج
ضاقت فلما استحكمت حلقاتها فرجت و كنت اضنها لا تفرج
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم