Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++
  • C 프로그래밍
  •   
  • C++
  •   
  • Redis
  •   
  • BASH 프로그래밍
  •   
  • Python
  •   
  • Java
  •   
  • 데이터 베이스
  •   
  • HTML
  •   
  • JavaScript
  •   
  • 프로그램 작성
  •   
  • CSS
  •   
  • Ruby
  •   
  • SQL
  •   
  • IOS
  •   
  • Android
  •   
  • MongoDB
  •   
  • MySQL
  •   
  • C#
  •   
  • PHP
  •   
  • SQL Server
  • C++

    1. Park-Miller 난수 생성 알고리즘을 구현하는 C++ 프로그램

      Park-Miller 난수 생성 알고리즘은 난수를 생성하는 또 다른 방법입니다. 이 유형의 난수 생성기(RNG)의 일반 공식은 다음과 같습니다. X_{k+1} =g X(k) mod n 계수 n이 소수 또는 소수의 거듭제곱인 경우 승수 ​​g는 고승법 계수 n의 요소이고 시드 X0은 n에 대해 공소입니다. 알고리즘 0) 시드 =t; 그렇지 않으면 시드 =t + n; 반환 종자; Done For i =0 ~ n random DoneEnd 함수 호출 예시 코드 #include 0) 시드 =t; 그렇지 않으면 시드 =t + n; 반

    2. Naor-Reingold 의사 랜덤 함수를 구현하는 C++ 프로그램

      Naor-Reingold 의사 난수 함수는 난수를 생성하는 또 다른 방법입니다. Moni Naor와 Omer Reingold는 1997년에 개인 키와 공개 키 암호화에서 다양한 암호화 기본 요소에 대한 효율적인 구성을 설명했습니다. p와 l을 l |p−1의 소수라고 합시다. 승법 차수 l의 요소 g ε Fp*를 선택합니다. 그런 다음 각 n차원 벡터에 대해 a =(a0 ,a1 , ..., an ). 그들은 기능을 정의합니다 fa(x)=ga0.a1x1a2x2…..anxn ε Fp 여기서 x =x1 ..

    3. 캐리 방법으로 곱하기를 사용하여 난수를 생성하는 C++ 프로그램

      multi-with-carry 방법은 Marsaglia와 Zaman(1991)이 도입한 add-with-carry 생성기의 변형입니다. 이 방법의 주요 이점은 간단한 컴퓨터 정수 산술을 호출하고 약 260에서 22000000까지의 엄청난 주기를 갖는 일련의 난수를 매우 빠르게 생성할 수 있다는 것입니다. MWC에서 기본 b는 컴퓨터 단어 크기와 같도록 선택되고 승수 a 및 지연 r은 계수 p =abr을 결정합니다. -1. 여기에서는 계수가 소수이고 승수가 긴 주기를 갖도록 선택됩니다. 알고리즘 Begin Declare max

    4. N 주사위 롤러를 에뮬레이트하는 C++ 프로그램

      다음은 N 주사위 롤러를 에뮬레이트하는 코드입니다. 이것은 1-6 사이의 난수를 생성하여 수행할 수 있습니다. 알고리즘 Begin    Declare n    Read n    For i = 0 to n-1 do       Generate sequence with rand() mod 6 + 1       Print the sequence    Done End 예시 코드 #include <iostream&

    5. 주어진 범위 사이의 소수를 생성하기 위해 Wheel Sieve를 구현하는 C++ 프로그램

      Wheel Sieve 방법은 주어진 범위 사이의 소수를 찾는 데 사용됩니다. 휠 인수분해는 합성에서 소수를 분리하는 에라토스테네스의 체에 대한 예비 작업을 수동으로 수행하기 위한 그래픽 방법입니다. 이 방법에서 가장 안쪽 원의 소수는 다른 원의 자신과 유사한 위치에 배수를 가지며 소수와 그 배수의 스포크를 형성합니다. 가장 안쪽 원에 있는 이러한 소수의 배수는 바깥쪽 원에 있는 합성수의 스포크를 형성합니다. 알고리즘 Begin    Define max number    gen_sieve_prim

    6. 주어진 범위 사이의 소수를 생성하기 위해 에라토스테네스의 체를 구현하는 C++ 프로그램

      이것은 주어진 범위 사이의 소수를 생성하기 위해 에라토스테네스의 체를 구현하는 C++ 프로그램입니다. 이 방법에서는 모든 요소가 포함된 정수 배열이 0으로 초기화됩니다. 중첩 루프 내에서 각 비 프라임 요소의 인덱스가 1로 표시된 곳이 따릅니다. 소수는 인덱스가 0으로 표시된 숫자입니다. 알고리즘 Begin    Declare an array of size n and initialize it to zero    Declare length, i, j    Read length &

    7. 루프 조건 내의 iostream::of가 잘못된 것으로 간주되는 이유는 무엇입니까?

      루프의 iostream::eof는 EOF에 도달하지 않았기 때문에 잘못된 것으로 간주됩니다. 따라서 다음 읽기가 성공한다는 의미는 아닙니다. C++에서 파일 스트림을 사용하여 파일을 읽고 싶을 때. 그리고 루프를 사용하여 파일에 쓸 때 stream.eof()를 사용하여 파일의 끝을 확인하면 실제로 파일이 끝에 도달했는지 여부를 확인하는 것입니다. 예시 코드 #include<iostream> #include<fstream> using namespace std; int main() { ifstream myF

    8. Linux에서 실행되는 C++ 코드를 프로파일링하려면 어떻게 해야 합니까?

      Linux 플랫폼에는 C++ 프로그램을 프로파일링하기 위한 훌륭한 프로파일링 도구가 많이 있습니다. Valgrind도 그 중 하나입니다. 널리 사용됩니다. 메모리 디버깅, 메모리 누수 감지 및 프로파일링을 위한 프로그래밍 도구입니다. 바이너리를 전달하고 도구를 callgrind로 설정하여 Valgrind를 사용할 수 있습니다. 먼저 프로그램을 컴파일하여 바이너리를 생성합니다. $ g++ -o abc.cpp abc 이제 valgrind를 사용하여 프로파일링하십시오. $ valgrind --tool=callgrind ./abc 그러

    9. C++에서 복사 생략 및 반환 값 최적화란 무엇입니까?

      복사 생략은 복사 생략이라고도 합니다. 이것은 컴파일러 최적화 기술 중 하나입니다. 불필요한 객체 복사를 방지합니다. 현재 거의 모든 컴파일러가 이 CopyElision 기술을 사용합니다. 예제 코드를 통해 작동 방식을 살펴보겠습니다. 예시 코드 #include <iostream> using namespace std; class MyClass { public: MyClass(const char* str = "\0") { //default constructor cout <<

    10. 주어진 범위 사이의 소수를 생성하기 위해 Atkin의 체를 구현하는 C++ 프로그램

      주어진 범위 사이의 소수를 생성하기 위해 Sieve of Atkin을 구현하는 C++ 프로그램입니다. Atkin의 체는 지정된 정수까지의 모든 소수를 찾는 최신 알고리즘입니다. 알고리즘 Begin    Create a results list, filled with 2, 3, and 5.    Initialize the sieve array with false values    Mark siev[n] is true if one of the following is true: &nbs

    11. Segmented Sieve를 구현하여 주어진 범위 사이의 소수를 생성하는 C++ 프로그램

      주어진 범위 사이의 소수를 생성하기 위해 Segmented Sieve를 구현하는 C++ 프로그램입니다. Segmented Sieve는 먼저 Simple Sieve를 사용하여 √(n)보다 작거나 같은 소수를 찾습니다. 이 알고리즘의 아이디어는 범위 [0 ... n-1]을 다른 세그먼트로 나누고 모든 세그먼트의 소수를 하나씩 계산하는 것입니다. 알고리즘 Begin    Create function to find all primes smaller than limit    using simple siev

    12. 라이브러리가 링크된 순서가 GCC에서 때때로 오류를 일으키는 이유는 무엇입니까?

      기본적으로 이러한 종류의 오류는 컴파일 단계의 링커에서 발생합니다. 링커의 기본 동작은 현재 프로그램이 필요할 때 아카이브 라이브러리에서 코드를 가져오는 것입니다. 제대로 작동하려면 라이브러리가 순서대로 있어야 합니다. 호출자보다 먼저 호출자 형식으로 있어야 한다고 말할 수 있습니다. 이 문제는 플래그를 사용하여 기본이 아닌 동작을 선택하여 해결할 수 있지만 이 과정에서 연결에 더 많은 시간이 걸릴 수 있습니다. 그렇지 않으면 라이브러리를 올바르게 주문하여 해결할 수 있습니다. Loaders와 tsort 이 두 가지는 순서를 재정

    13. static_cast, dynamic_cast, const_cast 및 reinterpret_cast는 언제 사용해야 합니까?

      const_cast 변수에 const를 제거하거나 추가하는 데 사용할 수 있습니다. 이것은 변수에서 constness를 추가/제거해야 하는 경우 유용할 수 있습니다. 정적 캐스트 노멀/보통 타입 변환에 사용합니다. 이것은 또한 암시적 형식 강제 변환을 담당하는 캐스트이며 명시적으로 호출될 수도 있습니다. floatto int, char to int 등의 경우에 사용해야 합니다. 다이내믹_캐스트 이 캐스트는 다형성을 처리하는 데 사용됩니다. 파생 클래스로 캐스팅할 때만 사용해야 합니다. 이것은 기본 클래스에서 파생 클래스로 형변

    14. <bits/stdc++.h>를 #include하면 안 되는 이유는 무엇입니까?

      는 헤더 파일입니다. 이 파일에는 모든 표준 라이브러리가 포함되어 있습니다. 가끔 코딩 대회에서 시간을 아껴야 할 때 이 헤더 파일을 사용하는 것이 도움이 됩니다. 소프트웨어 엔지니어링 접근 방식에서는 포함을 최소화해야 합니다. 이 헤더 파일을 사용하면 많은 파일이 포함되며 때로는 프로그램에서 필요하지 않을 수도 있습니다. 따라서 컴파일 시간과 프로그램 크기가 늘어날 수 있습니다. 이 헤더 파일의 몇 가지 큰 단점은 다음과 같습니다. 이 는 GNU C++ 라이브러리의 표준 헤더 파일이 아닙니다. 따라서 일부 컴파일러는 이

    15. #include <파일 이름>과 #include “파일 이름”의 차이점은 무엇입니까?

      두 형식의 차이점은 전처리기가 포함될 파일을 검색하는 위치에 있습니다. #include 전처리기는 구현에 따라 검색하고 컴파일러에서 미리 지정한 디렉터리를 검색합니다. 이 방법은 일반적으로 표준 라이브러리 헤더 파일을 포함하는 데 사용됩니다. #include 파일 이름 전처리기는 지시문이 포함된 파일과 동일한 디렉토리에서 검색합니다. 이것이 실패하면 #include 형식처럼 작동하기 시작합니다. 이 방법은 일반적으로 자신의 헤더 파일을 포함하는 데 사용됩니다.

    16. 주어진 숫자가 소수인지 확인하기 위해 Rabin-Miller 소수성 테스트를 구현하는 C++ 프로그램

      Rabin-Miller 소수성 검정은 주어진 숫자가 소수인지 여부를 확인하는 데 사용됩니다. 형식 소수 및 Solovay-Stressen 테스트와 유사합니다. 이 테스트는 러시아 수학자 M. M. Artjuhov가 처음 발견했습니다. 알고리즘 Begin    ll mulmod(ll a, ll b, ll m)    ll x = 0,y = a mod m    while (b > 0)       if (b mod 2 == 1)    

    17. n개의 숫자의 GCD와 LCM을 구하는 C++ 프로그램

      n개의 수의 GCD와 LCM을 구하는 코드입니다. 모두 0이 아닌 둘 이상의 정수의 GCD 또는 최대 공약수는 각 정수를 나누는 가장 큰 양의 정수입니다. GCD는 최대공약수라고도 합니다. 두 수의 최소공배수(LCM)는 두 수의 배수인 가장 작은 수(0이 아님)입니다. 알고리즘 Begin    Take two numbers as input    Call the function gcd() two find out gcd of n numbers    Call the function

    18. 순다람의 체를 사용하여 주어진 범위 사이의 소수를 생성하는 C++ 프로그램

      이것은 주어진 범위 사이의 소수를 생성하기 위해 순다람의 체를 구현하는 C++ 프로그램입니다. 이 알고리즘은 1934년 Sundaram에 의해 발견되었습니다. 알고리즘 Begin printPrimes(n) Here we find out primes smaller than n, we reduce n-2 to half. We call it New. New = (n-2)/2; Create an array marked[n] that is going to be used to separate numbers of

    19. 페르마 소수성 테스트를 수행하는 C++ 프로그램

      페르마 소수성 테스트는 주어진 숫자가 소수인지 아닌지를 확인하기 위해 수행합니다. 다음은 이 알고리즘의 C++ 코드입니다. 알고리즘 Begin    modulo(base, e, mod)    a = 1    b = base    while (e > 0)       if (e mod 2 == 1)          a = (a * b) % mod       &nb

    20. 2개의 부호 있는 숫자의 곱셈을 위한 Booth의 곱셈 알고리즘을 구현하는 C++ 프로그램

      Booth의 알고리즘은 2의 보수 표기법에서 두 개의 부호 있는 이진수를 곱하는 곱셈 알고리즘입니다. Booth는 추가보다 이동 속도가 더 빠른 탁상 계산기를 사용하고 속도를 높이는 알고리즘을 만들었습니다. 알고리즘 Begin    Put multiplicand in BR and multiplier in QR       and then the algorithm works as per the following conditions:    1. If Qn and Qn+1 ar

    Total 5992 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:29/300  20-컴퓨터/Page Goto:1 23 24 25 26 27 28 29 30 31 32 33 34 35