مراجعة - مكتب الأسهم
جزء من قسم المنطق وتدفق التنفيذ في رحلة R على Coddy. الدرس 11 من 64.
التحدي
متوسطأكمل process_orders(stock, orders). عالج الطلبات بالترتيب وأعد سطرًا واحدًا لكل منها:
unknown <item>عندما لا يكون العنصر موجودًا فيstockout of <item>عندما تكون كميته 0sold <item>خلاف ذلك، وتنخفض كميته بمقدار 1
بعد الطلبات، أضف سطرًا واحدًا لكل عنصر مُخزَّن بترتيب أبجدي: <item>: <quantity>.
يقرأ الكود المُزوَّد المخزون على هيئة أزواج name=quantity والطلبات على هيئة سطر مفصول بفواصل، ثم يطبع كل سطر مُعاد.
جرّب بنفسك
process_orders <- function(stock, orders) {
# اكتب الكود الخاص بك هنا
character(0)
}
# كود الإدخال/الإخراج المُزوَّد: أبقِه كما هو
input <- suppressWarnings(readLines(file("stdin")))
stock <- c()
for (pair in strsplit(input[1], ",")[[1]]) {
kv <- strsplit(pair, "=")[[1]]
stock[kv[1]] <- as.numeric(kv[2])
}
cat(process_orders(stock, strsplit(input[2], ",")[[1]]), sep = "\n")
جميع دروس المنطق وتدفق التنفيذ
1السلاسل النصية بعمق
السلاسل الفرعية باستخدام substr()التنسيق باستخدام sprintf()التقسيم والضمالبحث في السلاسل النصيةاستبدال النصوصمراجعة - منشئ اسم المستخدم4المصفوفات
إنشاء المصفوفاتفهرسة المصفوفاتملخصات الصفوف والأعمدةالحساب على المصفوفاتمراجعة - مخطط المقاعد2استرجاع القيم باستخدام المفاتيح
البحث في المتجهات المُسمّاةالتحقق من المفاتيحإضافة المفاتيح وإزالتهاالتكرار عبر الأسماءمراجعة - مكتب الأسهمتدرّب بنفسك: مترجم R عبر الإنترنت