"فراموشی"
33 subscribers
18 photos
31 videos
6 files
20 links
اینجا هر چی که من بلدم از کامپیوتر رو می زارم که اگه یادم رفت دوباره نخواهم برم یاد بگیرم و با خوندن اون یادم بیاد

لینک حمایت :)‌
https://daramet.com/PouriaAalamifar
Download Telegram
برداشتی که خیلی‌هامون از وضعیت فعلی #اینترنت داریم؛
نفس‌های آخرشه.

برداشتی که خیلی‌هامون از حال و وضعیت فعلی ظالم داریم، بازم همینه.
نفس‌های آخرشه .
🔥2
"فراموشی"
سرود – به لاله در خون خفته
هم شهدا ۸ سال دفاع مقدس و هم شهدا راه آزادی در دل ما جا دارند و آنهارا فراموش نمی کنیم

#جاویدان_ایرانه_عزیز_ما
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
و این بود داستان پایان یک پسر💔😭
💔4
داشتم جنایات و مکافات می‌خوندم، این جمله از داستایفسکی دقیقا همون حسی رو میگه که این روزا دارم:)

"هر وقت سعی میکنم لبخند بزنم،
احساس میکنم به آنچه رخ داده است، خیانت میکنم."
💔3
"فراموشی"
چالش انجام دادن روزی یک سوال از سوال ها یه Euler با پایتون😁 @faramoshi_pc
روز بیست‌وششم، سؤال بیست‌وششم:

Reciprocal cycles

A unit fraction contains 1 in the numerator. The decimal representation of the unit fractions with denominators 2 to 10 are given:

1/2 = 0.5
1/3 = 0.(3)
1/4 = 0.25
1/5 = 0.2
1/6 = 0.1(6)
1/7 = 0.(142857)
1/8 = 0.125
1/9 = 0.(1)
1/10 = 0.1

Where 0.1(6) means 0.166666..., and the 1-digit recurring cycle is '6'.
It can be seen that 1/7 has a 6-digit recurring cycle.

Find the value of d < 1000 for which 1/d contains the longest recurring cycle in its decimal part.

سؤال از ما می‌خواد:
بین همه اعداد d کوچکتر از ۱۰۰۰، اون d رو پیدا کنیم که وقتی ۱ رو بر d تقسیم می‌کنیم، بخش اعشاریش طولانی‌ترین دوره تکراری (recurring cycle) رو داشته باشه.
یعنی طولانی‌ترین دنباله‌ای که تو اعشار تکرار می‌شه.

مقدار نهایی: ۹۸۳
(یعنی ۱/۹۸۳ طولانی‌ترین چرخه رو داره که ۹۸۲ رقم طولشه)

def cycle_length(d):
if d % 2 == 0 or d % 5 == 0:
return 0
seen = {}
rem = 1
pos = 0
while rem not in seen:
seen[rem] = pos
rem = (rem * 10) % d
pos += 1
return pos - seen[rem]

max_len = 0
best_d = 0
for d in range(1, 1000):
length = cycle_length(d)
if length > max_len:
max_len = length
best_d = d

print(best_d, max_len) # 983 982


نکته: اگر d بر ۲ یا ۵ بخش‌پذیر باشه، اعشارش زود تموم می‌شه (مثل ۰.۵ یا ۰.۲۵) و چرخه تکراری نداره. برای همین طول چرخه‌ش رو ۰ گذاشتیم.

@faramoshi_pc
❤‍🔥1
دیدم این تیکه از کتابِ گرگِ بیابان از هرمان هسه خیلی موده؛

«من برای این دنیا زیادی شکسته‌ام،
و برای نابودشدن زیادی زنده‌ام.»
«درون من چند نفر زندگی می‌کنند
که هیچ‌کدام بلد نیستند خوشحال باشند.»
💔3
"فراموشی"
چالش روزی یک قدم برای تبدیل شدن به یک Rustacean 🦀😍 روز اول درس اول: مقدمه ای از Rustacean و زبان Rust روز دوم درس دوم: نصب Rust در ویندوز و لینوکس روز سوم درس سوم: آشنایی با Cargo، ساخت و اجرای پروژه روز چهارم درس چهارم:…
روز دهم از چالش تبدیل شدن به یک Rustacean 🦀

خب ما در جلسه پیش با حلقه ها در Rust و دستورات break و continue آشنا شدیم، تو این جلسه قرار با آرایه ها، حلقه for و tuple ها آشنا بشیم.

در ساختمان داده ما به جز Type های اصلی یک سری Compound Types دارین.


🔘 آرایه ها، Array

آرایه ها یک کالکشن از یک نوع داده هستن که داده ها را به صورت پشت سر هم در حافظه ذخیره میکنن، به طور مثال ما در زبان rust آرایه ها رو اینگونه تعریف می کنیم:
let cities = ["Tehran","Shiraz","isfahan"];

حالا چه جوری می تونین ازش استفاده کنیم؟🤔

برای دسترسی به عناصر آرایه، از index استفاده می‌کنیم. ایندکس‌ها در Rust (و اکثر زبان‌ها) از صفر شروع می‌شن:
fn main() {
let my_array = [12, 15, 9];

println!("{}", my_array[0]); // 12
println!("{}", my_array[1]); // 15
println!("{}", my_array[2]); // 9
}


نکته:
اگر سعی کنید به ایندکسی خارج از محدوده آرایه دسترسی پیدا کنید، برنامه panic می‌کنه و متوقف می‌شه.


🔘 مقداردهی اولیه آرایه‌ها
آرایه‌ها رو می‌تونیم به چند روش بسازیم.
به طور مثال ساخت آرایه با مقدار پیش‌فرض:
let numbers = [3; 5]; // [3, 3, 3, 3, 3]

و بعد عنصر به عنصر مقدار خانه های آرایه رو تغییر دهیم

🔘 چاپ آرایه‌ها
برای چاپ کل آرایه، میتونین از فرمت‌های Debug استفاده کنیم:
println!("{:?}", scores);

و اگر خروجی خواناتر بخوایم:
println!("{:#?}", scores);


🔘 حلقه for
یکی از بهترین راه‌ها برای کار با آرایه‌ها، استفاده از حلقه for هست:
fn main() {
let cities = ["Tehran", "Shiraz", "Isfahan"];

for city in cities {
println!("{}", city);
}
}

اینجا Rust خودش تک‌تک اعضای آرایه رو براتون برمی‌داره و داخل متغیر city می‌ذاره. تمیز، امن و خوانا 😌

اگه بخوایم به index هم دسترسی داشته باشیم، می‌تونیم این‌طوری بنویسیم:
fn main() {
let cities = ["Tehran", "Shiraz", "Isfahan"];

for i in 0..cities.len() {
println!("{} -> {}", i, cities[i]);
}
}


🔘 ا Tuple ها
ا Tuple ها هم جزو Compound Type ها هستن، با این تفاوت که می‌تونن چند نوع داده مختلف رو کنار هم نگه دارن.
fn main() {
let user = ("Ali", 23, true);

println!("{}", user.0); // Ali
println!("{}", user.1); // 23
}

یا روش حرفه‌ای‌تر و تمیزتر، Destructuring:
fn main() {
let user = ("Ali", 23, true);

let (name, age, is_active) = user;

println!("Name: {}", name);
println!("Age: {}", age);
println!("Active: {}", is_active);
}


نکته: Tuple ها معمولاً زمانی استفاده می‌شن که بخوایم چند مقدار مرتبط رو با هم برگردونیم یا نگه داریم، بدون این که Struct تعریف کنیم.

خب درس امروز هم همینجا تموم شد اگه دوست داشتید ریکشن بزارید اگه هم نقدی یا مشکلی در اون بود میتونید بهم پیام بدید😉

@faramoshi_pc
❤‍🔥2
باشد که روزگار،
بچرخد به کام دل،
باشد که غم،
خجل شود از صبر قلب ما...
5
40days40commands.pdf
11 MB
⚫️ کتاب "۴۰ روز، ۴۰ دستور لینوکسی"
▪️از حسین سیلانی

@faramoshi_pc
3
Media is too big
VIEW IN TELEGRAM
دلم تنگ شده بود براتون؛
3
تو این مدت که اینترنت قطع بود سعی کردم قلم خودمو حفظ کنم و تو راویکست بنویسم

راویکست تو دوره‌ ای که تمام وبلاگ ها دارن بسته میشن یا سانسور شدید گذاشتن رو پست ها و اینترنت قطع بود بالا اومد و با اين که هنوز خیلی جوونه و باگ داره توش میشه آزادی قلم یک نویسنده رو پیدا کرد و نکته خیلی مهم اپن‌سورسه و توسط کامیونیتی اداره‌ میشه که من خیلی از این نکته خوشم میاد

پست هایی که تو قطع اینترنت نوشتم رو میتونید از اینجا ببینید 😉

https://ravicast.com/@PouriaAalamifar
2👏1
تو این مدت که اینترنت قطع بود و یکم سرم خلوت شده بود تصمیم گرفتم یه دوره Rust بزارم و این زبان شیرین و قدرتمند رو آموزش بدم

سرفصل هاش به این صورته:

1.آشنایی با تعریف‌های پایه => Compiler، Keywords، IDE، نصب rustup، ساخت اولین برنامه، معرفی و ساخت اولین برنامه با cargo

2.اVariable => ساخت Variable، چاپ مقدار، Data Types، Type Aliases، Type suffix، Naming conventions، Mutability، Scope، Constant،Shadowing

3.خواندن اطلاعات از روی صفحه و Operator => دستور read_line، خواندن عدد – تبدیل، Split، Operator

4.اBoolean Logic => ا If و ‌else ، ا If و let ، حلقه‌های while و loop،

5.اDebug و حلقه ها ادامه => دستورات break و continue، بازگشت مقدار از حلقه، نام گذاری حلقه‌ها (Loop Labels)، انجام پروژه ها ، Debug

6.اCompound Types => ا Array، حلقه‌ی for، ا Tuple، ا Nested Tuple

7.اFunction => تعریف و پارامتر، Return

8.اOwnership => کل بحث حافظه ها و تخصیص حافظه و Stack، ا Heap، ا Ownership، ا Borrowing ، ا References، ا swap و ...

9.اStruct => ا tuple structs و Unit-Like Structs، ا Method - impl Blocks - Associated Functions ، ا Constructor ، ا Method cascading و ....

10.اEnum => ا Enum، Match ا، Option ا، If و let

11.اError Handlin => ا !Unrecoverable Errors – panic، ا Recoverable Errors – Result، ا unwrap – expect
، ا Propagating Errors و ? Operator

12.اCommon collection , ساخت رشته و پکیج‌ها => Vector، ا Format ، ا نصب پکیج‌ها – crates و استفاده از use


این دوره در ۴ ماه برگزار میشه، جلسه اولش برگزار شده و جلساتش هر چهارشنبه ساعت ۱۰ تا ۱۲ هست، اگه کسی خواست شرکت کنه میتونه بهم تو دایرکت کانال پیام بده🤗
🔥21
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
گسترش استفاده از Rust در هسته لینوکس

پشتیبانی از Rust دیگر صرفاً آزمایشی نیست و توسعه‌دهندگان هسته در حال افزودن درایورها و زیرسیستم‌های جدید با Rust هستند. برای Linux 7.1 نیز قابلیت‌های جدیدی برای بهبود کارایی کدهای Rust در دست توسعه است.

https://rust-lang.org/tools/install/
👍1
"فراموشی"
چالش انجام دادن روزی یک سوال از سوال ها یه Euler با پایتون😁 @faramoshi_pc
روز بیست‌وهفتم، سؤال بیست‌وهفتم:

Quadratic Primes
Euler discovered the remarkable quadratic formula:

n² + n + 41

It turns out that the formula will produce 40 primes for the consecutive integer values 0 <= n <= 39. However, when n = 40, 40² + 40 + 41 = 40(40+1) + 41 is divisible by 41, and certainly when n = 40, 40² + 40 + 41 is clearly divisible by 41.

The incredible formula n² - 79n + 1601 was discovered, which produces 80 primes for the consecutive values 0 <= n <= 79. The product of the coefficients, -79 and 1601, is - 126479.

Considering quadratics of the form:

n² + an + b, where |a| <= 1000 and |b| <= 1000

where |n| is the modulus/absolute value of n
e.g. |11| = 11 and |-4| = 4

Find the product of the coefficients, a and b, for the quadratic expression that produces the maximum number of primes for consecutive values of n, starting with n = 0.


سؤال از ما می‌خواد:
یک رابطه درجه دوم کلی به صورت n² + an + b داریم که در آن a بین ۹۹۹- تا ۹۹۹+ و b بین ۱۰۰۰- تا ۱۰۰۰+ است.

هدف اینه که مقادیری از a و b رو پیدا کنیم که این فرمول به ازای اونا، بیشترین تعداد اعداد اول متوالی رو از 0 = n به بالا تولید کنه.

در نهایت هم حاصل‌ضرب a * b رو می‌خواد.


مقدار نهایی: 59231-
(به ازای a = -61 و b = 971 که ۷۱ عدد اول متوالی تولید می‌کنه)
import math

def is_prime(num):
if num < 2:
return False
for i in range(2, int(math.sqrt(num)) + 1):
if num % i == 0:
return False
return True

def solve_euler_27():
max_primes = 0
best_a = 0
best_b = 0

b_primes = [b for b in range(2, 1001) if is_prime(b)]

for b in b_primes:
for a in range(-999, 1000, 2):
n = 0
while True:
value = n**2 + a*n + b
if is_prime(value):
n += 1
else:
break

if n > max_primes:
max_primes = n
best_a = a
best_b = b

print(f"Best a: {best_a}")
print(f"Best b: {best_b}")
print(f"Max consecutive primes: {max_primes}")
print(f"Product (a * b): {best_a * best_b}")

if __name__ == "__main__":
solve_euler_27()


نکته: با استفاده از ویژگی‌های ریاضی محدودیت‌های قوی روی حلقه‌ها گذاشتیم:
۱. مقدار b در حالت 0 =n دقیقاً خروجی فرمول است، پس b خودش باید عدد اول مثبت باشد.
۲. مقدار a باید عدد فرد باشد تا به ازای 1 = n خروجی فرمول یک عدد فرد (شاید اول) شود. این کار تعداد بررسی‌های حلقه را نصف و سرعت را فوق‌العاده بالا می‌برد.


@faramoshi_pc
1
This media is not supported in your browser
VIEW IN TELEGRAM
💔
رونالدو امشب واسه آخرین‌بار تو جام جهانی بازی کرد...
💔2
💔
💔2
Forwarded from Mr. T (hosein TooVinS)
حاضرم بهم بگن که Ai جای برنامه نویسا رو میگیره، ولی در عوض رونالدو جام جهانی 2026 بلند کنه

آدمِ مورد علاقه‌ی بچگیای من، گریه نکن مَرد💔

@ToovinsJs
💔2🕊1